diff --git a/.github/workflows/i18n-sync-check.yml b/.github/workflows/i18n-sync-check.yml new file mode 100644 index 00000000000..aec0df1c4f5 --- /dev/null +++ b/.github/workflows/i18n-sync-check.yml @@ -0,0 +1,51 @@ +name: i18n sync check + +on: + workflow_dispatch: + pull_request: + branches: + - "preview" + types: + - "opened" + - "synchronize" + - "reopened" + - "ready_for_review" + paths: + - "packages/i18n/**" + - ".github/workflows/i18n-sync-check.yml" + push: + branches: + - "preview" + paths: + - "packages/i18n/**" + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +permissions: + contents: read + +jobs: + sync-check: + name: check:sync + runs-on: ubuntu-latest + timeout-minutes: 5 + if: github.event_name == 'push' || github.event.pull_request.draft == false + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 1 + filter: blob:none + + - name: Set up Node.js + uses: actions/setup-node@v6 + with: + node-version: "22.18.0" + + - name: Enable Corepack and pnpm + run: corepack enable pnpm + + - name: Run sync check + run: pnpm dlx tsx packages/i18n/scripts/sync-check.ts --ci diff --git a/packages/i18n/package.json b/packages/i18n/package.json index 33ab128bfd9..7cb80e872cf 100644 --- a/packages/i18n/package.json +++ b/packages/i18n/package.json @@ -15,9 +15,9 @@ "scripts": { "dev": "tsdown --watch --no-clean", "build": "pnpm run generate:types && tsdown", - "generate:types": "npx tsx@4.19.2 scripts/generate-types.ts", - "sync:check": "npx tsx@4.19.2 scripts/sync-check.ts", - "check:sync": "npx tsx@4.19.2 scripts/sync-check.ts --ci", + "generate:types": "tsx scripts/generate-types.ts", + "sync:check": "tsx scripts/sync-check.ts", + "check:sync": "tsx scripts/sync-check.ts --ci", "check:lint": "oxlint --max-warnings=9 .", "check:types": "pnpm run generate:types && tsc --noEmit", "check:format": "oxfmt --check .", @@ -37,6 +37,7 @@ "@types/node": "catalog:", "@types/react": "catalog:", "tsdown": "catalog:", + "tsx": "catalog:", "typescript": "catalog:" } } diff --git a/packages/i18n/scripts/lib/locale-io.ts b/packages/i18n/scripts/lib/locale-io.ts new file mode 100644 index 00000000000..8aecbd3343f --- /dev/null +++ b/packages/i18n/scripts/lib/locale-io.ts @@ -0,0 +1,77 @@ +/** + * Copyright (c) 2023-present Plane Software, Inc. and contributors + * SPDX-License-Identifier: AGPL-3.0-only + * See the LICENSE file for details. + */ + +import fs from "node:fs"; +import path from "node:path"; + +export const LOCALES_DIR = path.resolve(import.meta.dirname, "../../src/locales"); + +/** Recursively flatten an object into dot-notation keys. */ +export function flattenKeys(obj: Record, prefix = ""): string[] { + const keys: string[] = []; + for (const [k, v] of Object.entries(obj)) { + const full = prefix ? `${prefix}.${k}` : k; + if (v !== null && typeof v === "object" && !Array.isArray(v)) { + keys.push(...flattenKeys(v as Record, full)); + } else { + keys.push(full); + } + } + return keys; +} + +/** Parse JSON from a file, including the file path in any error message. */ +export function readJsonFile(filePath: string): Record { + const raw = fs.readFileSync(filePath, "utf-8"); + try { + return JSON.parse(raw) as Record; + } catch (err) { + const message = err instanceof Error ? err.message : String(err); + throw new Error(`Failed to parse JSON at ${filePath}: ${message}`, { cause: err }); + } +} + +export interface NamespaceData { + name: string; // file stem, e.g. "common" + keys: Set; + data: Record; // original parsed object +} + +export interface LocaleData { + locale: string; + namespaces: NamespaceData[]; + allKeys: Set; +} + +export function listLocales(): string[] { + const entries = fs.readdirSync(LOCALES_DIR, { withFileTypes: true }); + return entries + .filter((e) => e.isDirectory()) + .map((e) => e.name) + .toSorted(); +} + +export function loadLocale(locale: string): LocaleData { + const localeDir = path.join(LOCALES_DIR, locale); + const files = fs.readdirSync(localeDir).filter((f) => f.endsWith(".json")); + + const namespaces: NamespaceData[] = []; + const allKeys = new Set(); + + for (const file of files) { + const filePath = path.join(localeDir, file); + const data = readJsonFile(filePath); + const name = path.basename(file, ".json"); + const keys = flattenKeys(data); + const keySet = new Set(keys); + namespaces.push({ name, keys: keySet, data }); + for (const key of keys) { + allKeys.add(key); + } + } + + return { locale, namespaces, allKeys }; +} diff --git a/packages/i18n/scripts/sync-check.ts b/packages/i18n/scripts/sync-check.ts index 1c730cf5367..fb622ad8871 100644 --- a/packages/i18n/scripts/sync-check.ts +++ b/packages/i18n/scripts/sync-check.ts @@ -5,74 +5,21 @@ */ // Usage: -// npx tsx packages/i18n/scripts/sync-check.ts # Report only -// npx tsx packages/i18n/scripts/sync-check.ts --ci # Exit 1 if issues found +// tsx packages/i18n/scripts/sync-check.ts # Report only +// tsx packages/i18n/scripts/sync-check.ts --ci # Exit 1 if issues found -import fs from "node:fs"; -import path from "node:path"; +import type { LocaleData } from "./lib/locale-io.js"; +import { LOCALES_DIR, listLocales, loadLocale } from "./lib/locale-io.js"; // --------------------------------------------------------------------------- // Helpers // --------------------------------------------------------------------------- -const LOCALES_DIR = path.resolve(import.meta.dirname, "../src/locales"); - -/** Recursively flatten an object into dot-notation keys. */ -function flattenKeys(obj: Record, prefix = ""): string[] { - const keys: string[] = []; - for (const [k, v] of Object.entries(obj)) { - const full = prefix ? `${prefix}.${k}` : k; - if (v !== null && typeof v === "object" && !Array.isArray(v)) { - keys.push(...flattenKeys(v as Record, full)); - } else { - keys.push(full); - } - } - return keys; -} - /** Format a number with commas (e.g. 7712 -> "7,712"). */ function fmt(n: number): string { return n.toLocaleString("en-US"); } -// --------------------------------------------------------------------------- -// Load locale data -// --------------------------------------------------------------------------- - -interface NamespaceData { - name: string; // file stem, e.g. "translations" - keys: Set; // flattened dot-notation keys -} - -interface LocaleData { - locale: string; - namespaces: NamespaceData[]; - allKeys: Set; -} - -async function loadLocale(locale: string): Promise { - const localeDir = path.join(LOCALES_DIR, locale); - const files = fs.readdirSync(localeDir).filter((f) => f.endsWith(".json")); - - const namespaces: NamespaceData[] = []; - const allKeys = new Set(); - - for (const file of files) { - const filePath = path.join(localeDir, file); - const obj: Record = JSON.parse(fs.readFileSync(filePath, "utf-8")); - const name = path.basename(file, ".json"); - const keys = flattenKeys(obj); - const keySet = new Set(keys); - namespaces.push({ name, keys: keySet }); - for (const key of keys) { - allKeys.add(key); - } - } - - return { locale, namespaces, allKeys }; -} - // --------------------------------------------------------------------------- // Checks // --------------------------------------------------------------------------- @@ -102,8 +49,7 @@ function findCollisions(localeData: LocaleData): CollisionEntry[] { collisions.push({ key, files }); } } - - return collisions.sort((a, b) => a.key.localeCompare(b.key)); + return collisions.toSorted((a, b) => a.key.localeCompare(b.key)); } interface PathConflict { @@ -113,7 +59,7 @@ interface PathConflict { /** Path conflict check: a key is both a leaf AND a prefix of another key. */ function findPathConflicts(localeData: LocaleData): PathConflict[] { - const allKeysArray = [...localeData.allKeys].sort(); + const allKeysArray = [...localeData.allKeys].toSorted(); const conflicts: PathConflict[] = []; // Build a set of all prefixes used in the keys @@ -168,8 +114,8 @@ function compareToEnglish(enKeys: Set, other: LocaleData): LocaleCompari return { locale: other.locale, totalKeys: other.allKeys.size, - missingKeys: missingKeys.sort(), - staleKeys: staleKeys.sort(), + missingKeys: missingKeys.toSorted(), + staleKeys: staleKeys.toSorted(), coverage, }; } @@ -178,15 +124,11 @@ function compareToEnglish(enKeys: Set, other: LocaleData): LocaleCompari // Main // --------------------------------------------------------------------------- -async function main() { +function main() { const ciMode = process.argv.includes("--ci"); // Discover all locale directories - const entries = fs.readdirSync(LOCALES_DIR, { withFileTypes: true }); - const localeDirs = entries - .filter((e) => e.isDirectory()) - .map((e) => e.name) - .sort(); + const localeDirs = listLocales(); if (!localeDirs.includes("en")) { console.error("ERROR: English locale (en) not found in", LOCALES_DIR); @@ -196,7 +138,7 @@ async function main() { // Load all locales const localeDataMap = new Map(); for (const locale of localeDirs) { - localeDataMap.set(locale, await loadLocale(locale)); + localeDataMap.set(locale, loadLocale(locale)); } const enData = localeDataMap.get("en")!; @@ -221,8 +163,8 @@ async function main() { console.log(` en: ${fmt(enData.allKeys.size)} keys (source)\n`); for (const comp of comparisons) { - const status = comp.missingKeys.length === 0 ? "\u2713" : "\u2717"; - const missingStr = comp.missingKeys.length > 0 ? ` \u2014 ${fmt(comp.missingKeys.length)} missing` : ""; + const status = comp.missingKeys.length === 0 ? "✓" : "✗"; + const missingStr = comp.missingKeys.length > 0 ? ` — ${fmt(comp.missingKeys.length)} missing` : ""; const staleStr = comp.staleKeys.length > 0 ? `, ${fmt(comp.staleKeys.length)} stale` : ""; console.log( ` ${status} ${comp.locale.padEnd(10)} ${fmt(comp.totalKeys)} keys (${comp.coverage.toFixed(1)}%)${missingStr}${staleStr}` @@ -237,7 +179,7 @@ async function main() { hasFailure = true; console.log("\nCROSS-NAMESPACE COLLISIONS:"); for (const c of collisions) { - console.log(` \u2717 "${c.key}" exists in: ${c.files.join(", ")}`); + console.log(` ✗ "${c.key}" exists in: ${c.files.join(", ")}`); } } @@ -246,7 +188,7 @@ async function main() { hasFailure = true; console.log("\nPATH CONFLICTS:"); for (const pc of pathConflicts) { - console.log(` \u2717 "${pc.leaf}" is a leaf but "${pc.branch}" extends it`); + console.log(` ✗ "${pc.leaf}" is a leaf but "${pc.branch}" extends it`); } } @@ -295,7 +237,9 @@ async function main() { } } -main().catch((err) => { +try { + main(); +} catch (err) { console.error("Sync check failed:", err); process.exit(1); -}); +} diff --git a/packages/i18n/src/locales/cs/auth.json b/packages/i18n/src/locales/cs/auth.json index ac785887cd4..e6e2f46c9d9 100644 --- a/packages/i18n/src/locales/cs/auth.json +++ b/packages/i18n/src/locales/cs/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-mail", - "placeholder": "jmeno@spolecnost.cz", - "errors": { - "required": "E-mail je povinný", - "invalid": "E-mail je neplatný" - } - }, - "password": { - "label": "Heslo", - "set_password": "Nastavit heslo", - "placeholder": "Zadejte heslo", - "confirm_password": { - "label": "Potvrďte heslo", - "placeholder": "Potvrďte heslo" - }, - "current_password": { - "label": "Aktuální heslo" - }, - "new_password": { - "label": "Nové heslo", - "placeholder": "Zadejte nové heslo" - }, - "change_password": { - "label": { - "default": "Změnit heslo", - "submitting": "Mění se heslo" - } - }, - "errors": { - "match": "Hesla se neshodují", - "empty": "Zadejte prosím své heslo", - "length": "Délka hesla by měla být více než 8 znaků", - "strength": { - "weak": "Heslo je slabé", - "strong": "Heslo je silné" - } - }, - "submit": "Nastavit heslo", - "toast": { - "change_password": { - "success": { - "title": "Úspěch!", - "message": "Heslo bylo úspěšně změněno." - }, - "error": { - "title": "Chyba!", - "message": "Něco se pokazilo. Zkuste to prosím znovu." - } - } - } - }, - "unique_code": { - "label": "Jedinečný kód", - "placeholder": "123456", - "paste_code": "Vložte kód zaslaný na váš e-mail", - "requesting_new_code": "Žádám o nový kód", - "sending_code": "Odesílám kód" - }, - "already_have_an_account": "Už máte účet?", - "login": "Přihlásit se", - "create_account": "Vytvořit účet", - "new_to_plane": "Nový v Plane?", - "back_to_sign_in": "Zpět k přihlášení", - "resend_in": "Znovu odeslat za {seconds} sekund", - "sign_in_with_unique_code": "Přihlásit se pomocí jedinečného kódu", - "forgot_password": "Zapomněli jste heslo?", - "username": { - "label": "Uživatelské jméno", - "placeholder": "Zadejte své uživatelské jméno" - } - }, - "sign_up": { - "header": { - "label": "Vytvořte účet a začněte spravovat práci se svým týmem.", - "step": { - "email": { - "header": "Registrace", - "sub_header": "" - }, - "password": { - "header": "Registrace", - "sub_header": "Zaregistrujte se pomocí kombinace e-mailu a hesla." - }, - "unique_code": { - "header": "Registrace", - "sub_header": "Zaregistrujte se pomocí jedinečného kódu zaslaného na výše uvedenou e-mailovou adresu." - } - } - }, - "errors": { - "password": { - "strength": "Zkuste nastavit silné heslo, abyste mohli pokračovat" - } - } - }, - "sign_in": { - "header": { - "label": "Přihlaste se a začněte spravovat práci se svým týmem.", - "step": { - "email": { - "header": "Přihlásit se nebo zaregistrovat", - "sub_header": "" - }, - "password": { - "header": "Přihlásit se nebo zaregistrovat", - "sub_header": "Použijte svou kombinaci e-mailu a hesla pro přihlášení." - }, - "unique_code": { - "header": "Přihlásit se nebo zaregistrovat", - "sub_header": "Přihlaste se pomocí jedinečného kódu zaslaného na výše uvedenou e-mailovou adresu." - } - } - } - }, - "forgot_password": { - "title": "Obnovte své heslo", - "description": "Zadejte ověřenou e-mailovou adresu vašeho uživatelského účtu a my vám zašleme odkaz na obnovení hesla.", - "email_sent": "Odeslali jsme odkaz na obnovení na vaši e-mailovou adresu", - "send_reset_link": "Odeslat odkaz na obnovení", - "errors": { - "smtp_not_enabled": "Vidíme, že váš správce neaktivoval SMTP, nebudeme schopni odeslat odkaz na obnovení hesla" - }, - "toast": { - "success": { - "title": "E-mail odeslán", - "message": "Zkontrolujte svou doručenou poštu pro odkaz na obnovení hesla. Pokud se neobjeví během několika minut, zkontrolujte svou složku se spamem." - }, - "error": { - "title": "Chyba!", - "message": "Něco se pokazilo. Zkuste to prosím znovu." - } - } - }, - "reset_password": { - "title": "Nastavit nové heslo", - "description": "Zabezpečte svůj účet silným heslem" - }, - "set_password": { - "title": "Zabezpečte svůj účet", - "description": "Nastavení hesla vám pomůže bezpečně se přihlásit" - }, - "sign_out": { - "toast": { - "error": { - "title": "Chyba!", - "message": "Nepodařilo se odhlásit. Zkuste to prosím znovu." - } - } - }, - "ldap": { - "header": { - "label": "Pokračovat s {ldapProviderName}", - "sub_header": "Zadejte své přihlašovací údaje {ldapProviderName}" - } - } - }, "sso": { "header": "Identita", "description": "Nakonfigurujte svou doménu pro přístup k bezpečnostním funkcím včetně jednotného přihlašování.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-mail", + "placeholder": "jmeno@spolecnost.cz", + "errors": { + "required": "E-mail je povinný", + "invalid": "E-mail je neplatný" + } + }, + "password": { + "label": "Heslo", + "set_password": "Nastavit heslo", + "placeholder": "Zadejte heslo", + "confirm_password": { + "label": "Potvrďte heslo", + "placeholder": "Potvrďte heslo" + }, + "current_password": { + "label": "Aktuální heslo" + }, + "new_password": { + "label": "Nové heslo", + "placeholder": "Zadejte nové heslo" + }, + "change_password": { + "label": { + "default": "Změnit heslo", + "submitting": "Mění se heslo" + } + }, + "errors": { + "match": "Hesla se neshodují", + "empty": "Zadejte prosím své heslo", + "length": "Délka hesla by měla být více než 8 znaků", + "strength": { + "weak": "Heslo je slabé", + "strong": "Heslo je silné" + } + }, + "submit": "Nastavit heslo", + "toast": { + "change_password": { + "success": { + "title": "Úspěch!", + "message": "Heslo bylo úspěšně změněno." + }, + "error": { + "title": "Chyba!", + "message": "Něco se pokazilo. Zkuste to prosím znovu." + } + } + } + }, + "unique_code": { + "label": "Jedinečný kód", + "placeholder": "123456", + "paste_code": "Vložte kód zaslaný na váš e-mail", + "requesting_new_code": "Žádám o nový kód", + "sending_code": "Odesílám kód" + }, + "already_have_an_account": "Už máte účet?", + "login": "Přihlásit se", + "create_account": "Vytvořit účet", + "new_to_plane": "Nový v Plane?", + "back_to_sign_in": "Zpět k přihlášení", + "resend_in": "Znovu odeslat za {seconds} sekund", + "sign_in_with_unique_code": "Přihlásit se pomocí jedinečného kódu", + "forgot_password": "Zapomněli jste heslo?", + "username": { + "label": "Uživatelské jméno", + "placeholder": "Zadejte své uživatelské jméno" + } + }, + "sign_up": { + "header": { + "label": "Vytvořte účet a začněte spravovat práci se svým týmem.", + "step": { + "email": { + "header": "Registrace", + "sub_header": "" + }, + "password": { + "header": "Registrace", + "sub_header": "Zaregistrujte se pomocí kombinace e-mailu a hesla." + }, + "unique_code": { + "header": "Registrace", + "sub_header": "Zaregistrujte se pomocí jedinečného kódu zaslaného na výše uvedenou e-mailovou adresu." + } + } + }, + "errors": { + "password": { + "strength": "Zkuste nastavit silné heslo, abyste mohli pokračovat" + } + } + }, + "sign_in": { + "header": { + "label": "Přihlaste se a začněte spravovat práci se svým týmem.", + "step": { + "email": { + "header": "Přihlásit se nebo zaregistrovat", + "sub_header": "" + }, + "password": { + "header": "Přihlásit se nebo zaregistrovat", + "sub_header": "Použijte svou kombinaci e-mailu a hesla pro přihlášení." + }, + "unique_code": { + "header": "Přihlásit se nebo zaregistrovat", + "sub_header": "Přihlaste se pomocí jedinečného kódu zaslaného na výše uvedenou e-mailovou adresu." + } + } + } + }, + "forgot_password": { + "title": "Obnovte své heslo", + "description": "Zadejte ověřenou e-mailovou adresu vašeho uživatelského účtu a my vám zašleme odkaz na obnovení hesla.", + "email_sent": "Odeslali jsme odkaz na obnovení na vaši e-mailovou adresu", + "send_reset_link": "Odeslat odkaz na obnovení", + "errors": { + "smtp_not_enabled": "Vidíme, že váš správce neaktivoval SMTP, nebudeme schopni odeslat odkaz na obnovení hesla" + }, + "toast": { + "success": { + "title": "E-mail odeslán", + "message": "Zkontrolujte svou doručenou poštu pro odkaz na obnovení hesla. Pokud se neobjeví během několika minut, zkontrolujte svou složku se spamem." + }, + "error": { + "title": "Chyba!", + "message": "Něco se pokazilo. Zkuste to prosím znovu." + } + } + }, + "reset_password": { + "title": "Nastavit nové heslo", + "description": "Zabezpečte svůj účet silným heslem" + }, + "set_password": { + "title": "Zabezpečte svůj účet", + "description": "Nastavení hesla vám pomůže bezpečně se přihlásit" + }, + "sign_out": { + "toast": { + "error": { + "title": "Chyba!", + "message": "Nepodařilo se odhlásit. Zkuste to prosím znovu." + } + } + }, + "ldap": { + "header": { + "label": "Pokračovat s {ldapProviderName}", + "sub_header": "Zadejte své přihlašovací údaje {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/cs/automation.json b/packages/i18n/src/locales/cs/automation.json index 2a6e35909e8..5aa7d2f1eea 100644 --- a/packages/i18n/src/locales/cs/automation.json +++ b/packages/i18n/src/locales/cs/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Zpět", "next": "Přidat akci" + }, + "warning": { + "disabled_trigger_switching": "Po vytvoření nelze typ spouštěče změnit" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Vyberte možnost", "handler_name": { "add_comment": "Přidat komentář", - "change_property": "Změnit vlastnost" + "change_property": "Změnit vlastnost", + "run_script": "Spustit skript" }, "configuration": { "label": "Konfigurace", @@ -89,6 +93,9 @@ "comment_block": { "title": "Přidat komentář" }, + "run_script_block": { + "title": "Spustit skript" + }, "change_property_block": { "title": "Změnit vlastnost" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Název automatizace", + "scope": "Rozsah", + "projects": "Projekty", "last_run_on": "Naposledy spuštěno", "created_on": "Vytvořeno", "last_updated_on": "Naposledy aktualizováno", @@ -230,6 +239,35 @@ "description": "Automatizace jsou způsob, jak automatizovat úkoly ve vašem projektu.", "sub_description": "Získejte zpět 80% svého administrativního času, když používáte automatizace." } + }, + "global_automations": { + "project_select": { + "label": "Vyberte projekty, na kterých se má tato automatizace spouštět", + "all_projects": { + "label": "Všechny projekty", + "description": "Automatizace poběží pro všechny projekty v pracovním prostoru." + }, + "select_projects": { + "label": "Vybrat projekty", + "description": "Automatizace poběží pro vybrané projekty v pracovním prostoru.", + "placeholder": "Vybrat projekty" + } + }, + "settings": { + "sidebar_label": "Automatizace", + "title": "Automatizace", + "description": "Standardizujte procesy napříč pracovním prostorem pomocí globálních automatizací." + }, + "table": { + "scope": { + "global": "Globální", + "project": { + "label": "Projekt", + "multiple": "Více", + "all": "Vše" + } + } + } } } } diff --git a/packages/i18n/src/locales/cs/common.json b/packages/i18n/src/locales/cs/common.json index 42fe1470589..c1e9372c24e 100644 --- a/packages/i18n/src/locales/cs/common.json +++ b/packages/i18n/src/locales/cs/common.json @@ -17,6 +17,7 @@ "no": "Ne", "ok": "OK", "name": "Název", + "unknown_user": "Neznámý uživatel", "description": "Popis", "search": "Hledat", "add_member": "Přidat člena", @@ -56,7 +57,8 @@ "no_worklogs": "Zatím žádné záznamy práce", "no_history": "Zatím žádná historie" }, - "appearance": "Vzhled", + "preferences": "Předvolby", + "language_and_time": "Jazyk a čas", "notifications": "Oznámení", "workspaces": "Pracovní prostory", "create_workspace": "Vytvořit pracovní prostor", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Něco se pokazilo. Zkuste to prosím znovu.", "load_more": "Načíst více", "select_or_customize_your_interface_color_scheme": "Vyberte nebo přizpůsobte barevné schéma rozhraní.", + "timezone_setting": "Aktuální nastavení časového pásma.", + "language_setting": "Vyberte jazyk používaný v uživatelském rozhraní.", + "settings_moved_to_preferences": "Nastavení časového pásma a jazyka bylo přesunuto do předvoleb.", + "go_to_preferences": "Přejít do předvoleb", "select_the_cursor_motion_style_that_feels_right_for_you": "Vyberte styl pohybu kurzoru, který vám vyhovuje.", "theme": "Téma", "smooth_cursor": "Plynulý kurzor", @@ -163,6 +169,7 @@ "project_created_successfully": "Projekt úspěšně vytvořen", "project_created_successfully_description": "Projekt byl úspěšně vytvořen. Nyní můžete začít přidávat pracovní položky.", "project_name_already_taken": "Název projektu už je zabraný.", + "project_name_cannot_contain_special_characters": "Název projektu nesmí obsahovat speciální znaky.", "project_identifier_already_taken": "Identifikátor projektu už je zabraný.", "project_cover_image_alt": "Úvodní obrázek projektu", "name_is_required": "Název je povinný", @@ -207,6 +214,7 @@ "issues": "Pracovní položky", "cycles": "Cykly", "modules": "Moduly", + "pages": "Stránky", "intake": "Příjem", "renew": "Obnovit", "preview": "Náhled", @@ -298,6 +306,7 @@ "start_date": "Datum začátku", "end_date": "Datum ukončení", "due_date": "Termín", + "target_date": "Cílové datum", "estimate": "Odhad", "change_parent_issue": "Změnit nadřazenou pracovní položku", "remove_parent_issue": "Odebrat nadřazenou pracovní položku", @@ -354,6 +363,10 @@ "export": "Exportovat", "member": "{count, plural, one{# člen} few{# členové} other{# členů}}", "new_password_must_be_different_from_old_password": "Nové heslo musí být odlišné od starého hesla", + "edited": "upraveno", + "bot": "Bot", + "settings_description": "Spravujte nastavení svého účtu, pracovního prostoru a projektů na jednom místě. Přepínáním mezi záložkami je můžete snadno konfigurovat.", + "back_to_workspace": "Zpět do pracovního prostoru", "upgrade_request": "Požádejte správce pracovního prostoru o upgrade.", "copied_to_clipboard": "Zkopírováno do schránky", "copied_to_clipboard_description": "URL byla úspěšně zkopírována do schránky", @@ -420,6 +433,9 @@ "modules": "Moduly", "labels": "Štítky", "label": "Štítek", + "admins": "Administrátoři", + "users": "Uživatelé", + "guests": "Hosté", "assignees": "Přiřazení", "assignee": "Přiřazeno", "created_by": "Vytvořil", @@ -449,6 +465,8 @@ "work_item": "Pracovní položka", "work_items": "Pracovní položky", "sub_work_item": "Podřízená pracovní položka", + "views": "Pohledy", + "pages": "Stránky", "add": "Přidat", "warning": "Varování", "updating": "Aktualizace", @@ -494,7 +512,7 @@ "workspace_level": "Úroveň pracovního prostoru", "order_by": { "label": "Řadit podle", - "manual": "Ručně", + "manual": "Ručně - Pořadí", "last_created": "Naposledy vytvořené", "last_updated": "Naposledy aktualizované", "start_date": "Datum začátku", @@ -530,6 +548,7 @@ "continue": "Pokračovat", "resend": "Znovu odeslat", "relations": "Vztahy", + "dependencies": "Závislosti", "errors": { "default": { "title": "Chyba!", @@ -561,11 +580,27 @@ "quarter": "Čtvrtletí", "press_for_commands": "Stiskněte '/' pro příkazy", "click_to_add_description": "Klikněte pro přidání popisu", + "on_track": "Na správné cestě", + "off_track": "Mimo plán", + "at_risk": "V ohrožení", + "timeline": "Časová osa", + "completion": "Dokončení", + "upcoming": "Nadcházející", + "completed": "Dokončeno", + "in_progress": "Probíhá", + "planned": "Plánováno", + "paused": "Pozastaveno", "search": { "label": "Hledat", "placeholder": "Zadejte hledaný výraz", "no_matches_found": "Nenalezeny žádné shody", - "no_matching_results": "Žádné odpovídající výsledky" + "no_matching_results": "Žádné odpovídající výsledky", + "min_chars": "Pro hledání zadejte alespoň {count} znaků", + "error": "Chyba při načítání výsledků hledání", + "no_results": { + "title": "Žádné odpovídající výsledky", + "description": "Odstraňte kritéria hledání pro zobrazení všech výsledků" + } }, "actions": { "edit": "Upravit", @@ -582,7 +617,9 @@ "clear_sorting": "Vymazat řazení", "show_weekends": "Zobrazit víkendy", "enable": "Povolit", - "disable": "Zakázat" + "disable": "Zakázat", + "copy_markdown": "Kopírovat markdown", + "reply": "Odpovědět" }, "name": "Název", "discard": "Zahodit", @@ -595,6 +632,7 @@ "disabled": "Zakázáno", "mandate": "Mandát", "mandatory": "Povinné", + "global": "Globální", "yes": "Ano", "no": "Ne", "please_wait": "Prosím čekejte", @@ -604,6 +642,7 @@ "or": "nebo", "next": "Další", "back": "Zpět", + "retry": "Zkusit znovu", "cancelling": "Rušení", "configuring": "Konfigurace", "clear": "Vymazat", @@ -658,31 +697,27 @@ "deactivated_user": "Deaktivovaný uživatel", "apply": "Použít", "applying": "Používání", - "users": "Uživatelé", - "admins": "Administrátoři", - "guests": "Hosté", - "on_track": "Na správné cestě", - "off_track": "Mimo plán", - "at_risk": "V ohrožení", - "timeline": "Časová osa", - "completion": "Dokončení", - "upcoming": "Nadcházející", - "completed": "Dokončeno", - "in_progress": "Probíhá", - "planned": "Plánováno", - "paused": "Pozastaveno", + "overview": "Přehled", "no_of": "Počet {entity}", "resolved": "Vyřešeno", + "get_started": "Začít", "worklogs": "Pracovní záznamy", "project_updates": "Aktualizace projektu", - "overview": "Přehled", "workflows": "Workflow", "templates": "Šablony", + "business": "Business", "members_and_teamspaces": "Členové a týmové prostory", + "recurring_work_items": "Opakující se pracovní položky", + "milestones": "Milníky", "open_in_full_screen": "Otevřít {page} na celou obrazovku", "details": "Podrobnosti", "project_structure": "Struktura projektu", - "custom_properties": "Vlastní vlastnosti" + "custom_properties": "Vlastní vlastnosti", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Osa X", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane se nespustil. To může být způsobeno tím, že se jeden nebo více služeb Plane nepodařilo spustit.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Vyberte View Logs z setup.sh a Docker logů, abyste si byli jisti." }, + "customize_navigation": "Přizpůsobit navigaci", + "personal": "Osobní", + "accordion_navigation_control": "Harmonikové postranní navigační menu", + "horizontal_navigation_bar": "Navigace se záložkami", + "show_limited_projects_on_sidebar": "Zobrazit omezený počet projektů v postranním panelu", + "enter_number_of_projects": "Zadejte počet projektů", + "pin": "Připnout", + "unpin": "Odepnout", "workspace_dashboards": "Dashboards", "pi_chat": "Plane AI", "in_app": "V aplikaci", "forms": "Formuláře", - "choose_workspace_for_integration": "Vyberte pracovní prostor pro připojení této aplikace", - "integrations_description": "Aplikace, které pracují s Plane, musí být připojeny k pracovnímu prostoru, kde jste správce.", - "create_a_new_workspace": "Vytvořit nový pracovní prostor", - "no_workspaces_to_connect": "Žádné pracovní prostory k připojení", - "no_workspaces_to_connect_description": "Musíte vytvořit pracovní prostor, abyste mohli připojit integraci a šablony", - "learn_more_about_workspaces": "Zjistit více o pracovních prostorech", + "milestones": "Milníky", + "milestones_description": "Milníky poskytují vrstvu pro sladění pracovních položek směrem ke společným termínům dokončení.", "file_upload": { "upload_text": "Klikněte zde pro nahrání souboru", "drag_drop_text": "Přetáhnout a upustit", "processing": "Zpracovává se", - "invalid": "Neplatný typ souboru", + "invalid_file_type": "Neplatný typ souboru", "missing_fields": "Chybějící pole", "success": "{fileName} nahráno!" }, - "project_name_cannot_contain_special_characters": "Název projektu nesmí obsahovat speciální znaky.", "date": "Datum", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/cs/editor.json b/packages/i18n/src/locales/cs/editor.json index c53c8230532..17b29db18f6 100644 --- a/packages/i18n/src/locales/cs/editor.json +++ b/packages/i18n/src/locales/cs/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Zadejte prosím platnou URL adresu." } + }, + "ai_block": { + "content": { + "placeholder": "Popište obsah tohoto bloku", + "generated_here": "Zde bude vygenerován obsah AI" + }, + "block_types": { + "placeholder": "Vyberte typ bloku", + "summarize_page": "Shrnout stránku", + "custom_prompt": "Vlastní prompt" + }, + "actions": { + "discard": "Zahodit", + "generate": "Vygenerovat", + "generating": "Generování", + "rewriting": "Přepisování", + "rewrite": "Přepsat", + "use_this": "Použít toto", + "refine": "Upřesnit" + } } } diff --git a/packages/i18n/src/locales/cs/empty-state.json b/packages/i18n/src/locales/cs/empty-state.json index 5d57f971b27..a812af9bea6 100644 --- a/packages/i18n/src/locales/cs/empty-state.json +++ b/packages/i18n/src/locales/cs/empty-state.json @@ -249,10 +249,22 @@ "title": "Sledujte časové výkazy pro všechny členy", "description": "Zaznamenávejte čas na pracovních položkách pro zobrazení podrobných časových výkazů pro jakéhokoli člena týmu napříč projekty." }, + "group_syncing": { + "title": "Zatím žádná mapování skupin" + }, "template_setting": { "title": "Zatím žádné šablony", "description": "Zkraťte dobu nastavení vytvářením šablon pro projekty, pracovní položky a stránky — a začněte novou práci během několika sekund.", "cta_primary": "Vytvořit šablonu" + }, + "workflows": { + "title": "Zatím žádné workflow", + "description": "Vytvářejte workflow pro správu průběhu vašich pracovních položek.", + "cta_primary": "Přidat nové workflow", + "states": { + "title": "Přidat stavy", + "description": "Vyberte stavy, kterými pracovní položka prochází." + } } } } diff --git a/packages/i18n/src/locales/cs/integration.json b/packages/i18n/src/locales/cs/integration.json index 9385d68a48a..fedd09f6b1d 100644 --- a/packages/i18n/src/locales/cs/integration.json +++ b/packages/i18n/src/locales/cs/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Chyba serveru při načítání stavů" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Připojte a synchronizujte své repozitáře Bitbucket Data Center s Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Ověření tokenů externích IdP pro přístup k API.", @@ -302,10 +306,10 @@ "generic_error": "Při zpracování vaší žádosti došlo k neočekávané chybě", "connection_not_found": "Požadované připojení nebylo nalezeno", "multiple_connections_found": "Bylo nalezeno více připojení, když bylo očekáváno pouze jedno", + "cannot_create_multiple_connections": "Už jste připojili svou organizaci s pracovním prostorem. Prosím, odpojte existující připojení před připojením nového.", "installation_not_found": "Požadovaná instalace nebyla nalezena", "user_not_found": "Požadovaný uživatel nebyl nalezen", "error_fetching_token": "Nepodařilo se získat autentizační token", - "cannot_create_multiple_connections": "Už jste připojili svou organizaci s pracovním prostorem. Prosím, odpojte existující připojení před připojením nového.", "invalid_app_credentials": "Poskytnuté přihlašovací údaje aplikace jsou neplatné", "invalid_app_installation_id": "Nepodařilo se nainstalovat aplikaci" }, @@ -316,6 +320,7 @@ "pulling": "Stahování", "timed_out": "Časový limit vypršel", "pulled": "Staženo", + "progressing": "Probíhá", "transforming": "Transformace", "transformed": "Transformováno", "pushing": "Odesílání", diff --git a/packages/i18n/src/locales/cs/module.json b/packages/i18n/src/locales/cs/module.json index 0fc84ffa93a..03dba08cfca 100644 --- a/packages/i18n/src/locales/cs/module.json +++ b/packages/i18n/src/locales/cs/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modul} few {Moduly} other {Modulů}}", - "no_module": "Žádný modul" + "no_module": "Žádný modul", + "select": "Přidat moduly" } } diff --git a/packages/i18n/src/locales/cs/navigation.json b/packages/i18n/src/locales/cs/navigation.json index f3c8b2edd64..d340abfa98f 100644 --- a/packages/i18n/src/locales/cs/navigation.json +++ b/packages/i18n/src/locales/cs/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Nenalezeny výsledky" + } + } + }, "sidebar": { + "stickies": "Poznámky", + "your_work": "Vaše práce", "projects": "Projekty", "pages": "Stránky", "new_work_item": "Nová pracovní položka", "home": "Domov", - "your_work": "Vaše práce", "inbox": "Doručená pošta", "workspace": "Pracovní prostor", "views": "Pohledy", @@ -21,14 +29,6 @@ "epics": "Epiky", "upgrade_plan": "Plán upgradu", "plane_pro": "Plane Pro", - "business": "Byznys", - "recurring_work_items": "Opakující se pracovní položky" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Nenalezeny výsledky" - } - } + "business": "Byznys" } } diff --git a/packages/i18n/src/locales/cs/page.json b/packages/i18n/src/locales/cs/page.json index e5c0fe0a079..2688d02bde3 100644 --- a/packages/i18n/src/locales/cs/page.json +++ b/packages/i18n/src/locales/cs/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Propojit stránky", - "show_wiki_pages": "Zobrazit wikipedií", - "link_pages_to": "Propojit stránky k", - "linked_pages": "Propojené stránky", - "no_description": "Tato stránka je prázdná. Napište něco do ní a uvidíte to zde jako tento placeholder", - "toasts": { - "link": { - "success": { - "title": "Stránky aktualizovány", - "message": "Stránky byly úspěšně aktualizovány" - }, - "error": { - "title": "Stránky nebyly aktualizovány", - "message": "Nepodařilo se aktualizovat stránky" - } - }, - "remove": { - "success": { - "title": "Stránka odstraněna", - "message": "Stránka byla úspěšně odstraněna" - }, - "error": { - "title": "Stránka nebyla odstraněna", - "message": "Nepodařilo se odstranit stránku" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Chybí obrázky", "description": "Přidejte obrázky, aby se zde zobrazily." } + }, + "comments": { + "label": "Komentáře", + "empty_state": { + "title": "Žádné komentáře", + "description": "Přidejte komentáře, aby se zde zobrazily." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Název poznámky nesmí být delší než 100 znaků.", + "already_exists": "Již existuje poznámka bez popisu" + }, + "created": { + "title": "Poznámka vytvořena", + "message": "Poznámka byla úspěšně vytvořena" + }, + "not_created": { + "title": "Poznámka nebyla vytvořena", + "message": "Poznámku se nepodařilo vytvořit" + }, + "updated": { + "title": "Poznámka aktualizována", + "message": "Poznámka byla úspěšně aktualizována" + }, + "not_updated": { + "title": "Poznámka nebyla aktualizována", + "message": "Poznámku se nepodařilo aktualizovat" + }, + "removed": { + "title": "Poznámka odstraněna", + "message": "Poznámka byla úspěšně odstraněna" + }, + "not_removed": { + "title": "Poznámka nebyla odstraněna", + "message": "Poznámku se nepodařilo odstranit" } }, "open_button": "Otevřít navigační panel", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Přesunout", + "loading": "Přesouvání" + }, + "cannot_move_to_teamspace": "Soukromé a sdílené stránky nelze přesunout do týmového prostoru.", "placeholders": { + "workspace_to_all": "Hledat projekty a týmové prostory", + "workspace_to_project": "Hledat projekty", + "project_to_all": "Hledat projekty a týmové prostory", + "project_to_project": "Hledat projekty", "project_to_all_with_wiki": "Hledat wiki kolekce, projekty a týmové prostory", "project_to_project_with_wiki": "Hledat wiki kolekce a projekty" }, "toasts": { + "success": { + "title": "Úspěch!", + "message": "Stránka byla úspěšně přesunuta." + }, + "error": { + "title": "Chyba!", + "message": "Stránku se nepodařilo přesunout. Zkuste to prosím později." + }, "collection_error": { "title": "Přesunuto do wiki", "message": "Stránka byla přesunuta do wiki, ale nepodařilo se ji přidat do vybrané kolekce. Zůstává v General." diff --git a/packages/i18n/src/locales/cs/project-settings.json b/packages/i18n/src/locales/cs/project-settings.json index 3f58167d257..967e998d006 100644 --- a/packages/i18n/src/locales/cs/project-settings.json +++ b/packages/i18n/src/locales/cs/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Členové", "project_lead": "Vedoucí projektu", + "project_lead_description": "Vyberte vedoucího projektu.", "default_assignee": "Výchozí přiřazení", + "default_assignee_description": "Vyberte výchozího přiřazeného pro projekt.", + "project_subscribers": "Odběratelé projektu", + "project_subscribers_description": "Vyberte členy, kteří budou dostávat oznámení pro tento projekt.", "guest_super_permissions": { "title": "Udělit hostům přístup ke všem položkám:", "sub_heading": "Hosté uvidí všechny položky v projektu." @@ -30,13 +34,11 @@ "title": "Pozvat členy", "sub_heading": "Pozvěte členy do projektu.", "select_co_worker": "Vybrat spolupracovníka" - }, - "project_lead_description": "Vyberte vedoucího projektu.", - "default_assignee_description": "Vyberte výchozího přiřazeného pro projekt.", - "project_subscribers": "Odběratelé projektu", - "project_subscribers_description": "Vyberte členy, kteří budou dostávat oznámení pro tento projekt." + } }, "states": { + "heading": "Stavy", + "description": "Definujte a přizpůsobte stavy workflow pro sledování průběhu vašich pracovních položek.", "describe_this_state_for_your_members": "Popište tento stav členům.", "empty_state": { "title": "Žádné stavy pro skupinu {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Štítky", + "description": "Vytvářejte vlastní štítky pro kategorizaci a organizaci vašich pracovních položek", "label_title": "Název štítku", "label_title_is_required": "Název štítku je povinný", "label_max_char": "Název štítku nesmí přesáhnout 255 znaků", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Odhady", + "description": "Nastavte systémy odhadů pro sledování a komunikaci úsilí potřebného pro každou pracovní položku.", "label": "Odhady", "title": "Povolit odhady pro můj projekt", - "description": "Pomáhají vám komunikovat složitost a pracovní zátěž týmu.", + "enable_description": "Pomáhají vám komunikovat složitost a pracovní zátěž týmu.", "no_estimate": "Bez odhadu", "new": "Nový systém odhadů", "create": { @@ -112,6 +118,16 @@ "title": "Přeuspořádání odhadů selhalo", "message": "Nepodařilo se přeuspořádat odhady, zkuste to prosím znovu" } + }, + "switch": { + "success": { + "title": "Systém odhadů vytvořen", + "message": "Úspěšně vytvořeno a povoleno" + }, + "error": { + "title": "Chyba", + "message": "Něco se pokazilo" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatizace", + "heading": "Automatizace", + "description": "Konfigurujte automatické akce pro zefektivnění procesu řízení projektu a snížení manuálních úkolů.", "auto-archive": { "title": "Automaticky archivovat uzavřené pracovní položky", "description": "Plane bude automaticky archivovat pracovní položky, které byly dokončeny nebo zrušeny.", @@ -194,6 +212,116 @@ "description": "Nakonfigurujte GitHub a další integrace pro synchronizaci vašich pracovních položek projektu." } }, + "workflows": { + "toggle": { + "title": "Povolit workflow", + "description": "Nastavte workflow pro řízení pohybu pracovních položek", + "no_states_tooltip": "Do workflow nejsou přidány žádné stavy.", + "no_work_item_types_tooltip": "Do workflow nejsou přidány žádné typy pracovních položek.", + "no_states_or_work_item_types_tooltip": "Do workflow nejsou přidány žádné stavy nebo typy pracovních položek.", + "toast": { + "loading": { + "enabling": "Povolování workflow", + "disabling": "Zakazování workflow" + }, + "success": { + "title": "Úspěch!", + "message": "Workflow úspěšně povolena." + }, + "error": { + "title": "Chyba!", + "message": "Povolení workflow se nezdařilo. Zkuste to prosím znovu." + } + } + }, + "heading": "Workflow", + "description": "Automatizujte přechody pracovních položek a nastavte pravidla pro řízení toho, jak se úkoly pohybují vaším projektem.", + "add_button": "Přidat nové workflow", + "search": "Hledat workflow", + "detail": { + "define": "Definovat workflow", + "add_states": "Přidat stavy", + "unmapped_states": { + "title": "Detekovány nenamapované stavy", + "description": "Některé pracovní položky vybraných typů jsou aktuálně ve stavech, které v tomto workflow neexistují.", + "note": "Pokud toto workflow povolíte, budou tyto položky automaticky přesunuty do počátečního stavu tohoto workflow.", + "label": "Chybějící stavy", + "tooltip": "Některé pracovní položky jsou ve stavech, které nejsou namapovány do tohoto workflow. Otevřete workflow pro kontrolu." + } + }, + "select_states": { + "empty_state": { + "title": "Všechny stavy se používají", + "description": "Všechny definované stavy pro tento projekt jsou již přítomny ve vašem aktuálním workflow." + } + }, + "default_footer": { + "fallback_message": "Toto workflow se vztahuje na jakýkoli typ pracovní položky, který není přiřazen k workflow." + }, + "create": { + "heading": "Vytvořit nové workflow", + "name": { + "placeholder": "Přidejte jedinečný název", + "validation": { + "max_length": "Název musí mít méně než 255 znaků", + "required": "Název je povinný", + "invalid": "Název může obsahovat pouze písmena, číslice, mezery, pomlčky a apostrofy" + } + }, + "description": { + "placeholder": "Přidejte krátký popis", + "validation": { + "invalid": "Popis může obsahovat pouze písmena, číslice, mezery, pomlčky a apostrofy" + } + }, + "work_item_type": { + "label": "Typ pracovní položky" + }, + "success": { + "title": "Úspěch!", + "message": "Workflow úspěšně vytvořeno." + }, + "error": { + "title": "Chyba!", + "message": "Vytvoření workflow se nezdařilo. Zkuste to prosím znovu." + } + }, + "update": { + "success": { + "title": "Úspěch!", + "message": "Workflow úspěšně aktualizováno." + }, + "error": { + "title": "Chyba!", + "message": "Aktualizace workflow se nezdařila. Zkuste to prosím znovu." + } + }, + "delete": { + "loading": "Mazání workflow", + "success": { + "title": "Úspěch!", + "message": "Workflow úspěšně smazáno." + }, + "error": { + "title": "Chyba!", + "message": "Smazání workflow se nezdařilo. Zkuste to prosím znovu." + } + }, + "add_states": { + "success": { + "title": "Úspěch!", + "message": "Stavy úspěšně přidány." + }, + "error": { + "title": "Chyba!", + "message": "Přidání stavů se nezdařilo. Zkuste to prosím znovu." + } + } + }, + "work_item_types": { + "heading": "Typy pracovních položek", + "description": "Vytvářejte a přizpůsobujte různé typy pracovních položek s jedinečnými vlastnostmi" + }, "features": { "cycles": { "title": "Cykly", @@ -302,6 +430,14 @@ "error": "Při aktualizaci funkce projektu se něco pokazilo. Zkuste to prosím znovu." } }, + "project_updates": { + "heading": "Aktualizace projektu", + "description": "Konsolidované sledování a monitorování pokroku tohoto projektu" + }, + "templates": { + "heading": "Šablony", + "description": "Ušetřete 80 % času stráveného vytvářením projektů, pracovních položek a stránek, když použijete šablony." + }, "cycles": { "auto_schedule": { "heading": "Automatické plánování cyklů", diff --git a/packages/i18n/src/locales/cs/project.json b/packages/i18n/src/locales/cs/project.json index 6dc84072172..8e2d3b4cccd 100644 --- a/packages/i18n/src/locales/cs/project.json +++ b/packages/i18n/src/locales/cs/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Ukládejte filtry jako pohledy.", + "description": "Pohledy jsou uložené filtry pro snadný přístup. Sdílejte je v týmu.", + "primary_button": { + "text": "Vytvořit první pohled", + "comic": { + "title": "Pohledy pracují s vlastnostmi položek.", + "description": "Vytvořte pohled s požadovanými filtry." + } + }, + "filter": { + "title": "Žádné odpovídající pohledy", + "description": "Žádné pohledy neodpovídají kritériím hledání.\n Místo toho vytvořte nový pohled." + } + }, + "no_archived_issues": { + "title": "Zatím žádné archivované pracovní položky", + "description": "Ručně nebo pomocí automatizace můžete archivovat pracovní položky, které jsou dokončené nebo zrušené. Jakmile budou archivovány, najdete je zde.", + "primary_button": { + "text": "Nastavit automatizaci" + } + }, + "issues_empty_filter": { + "title": "Nebyly nalezeny žádné pracovní položky odpovídající použitým filtrům", + "secondary_button": { + "text": "Vymazat všechny filtry" + } + }, + "public": { + "title": "Zatím žádné veřejné stránky", + "description": "Zde uvidíte stránky sdílené se všemi ve vašem projektu.", + "primary_button": { + "text": "Vytvořte svou první stránku" + } + }, + "archived": { + "title": "Zatím žádné archivované stránky", + "description": "Archivujte stránky, které nejsou na vašem radaru. Přistupujte k nim odtud, když je budete potřebovat." + }, + "shared": { + "title": "Zatím žádné sdílené stránky", + "description": "Stránky, které s vámi ostatní sdíleli, se objeví zde." + } + }, + "delete_view": { + "title": "Opravdu chcete smazat tento pohled?", + "content": "Pokud potvrdíte, všechny možnosti řazení, filtrování a zobrazení + rozvržení, které jste vybrali pro tento pohled, budou trvale odstraněny a nelze je obnovit." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Ukládejte filtry jako pohledy.", - "description": "Pohledy jsou uložené filtry pro snadný přístup. Sdílejte je v týmu.", - "primary_button": { - "text": "Vytvořit první pohled", - "comic": { - "title": "Pohledy pracují s vlastnostmi položek.", - "description": "Vytvořte pohled s požadovanými filtry." - } - } - }, - "filter": { - "title": "Žádné odpovídající pohledy", - "description": "Vytvořte nový pohled." - } - }, - "delete_view": { - "title": "Opravdu chcete smazat tento pohled?", - "content": "Pokud potvrdíte, všechny možnosti řazení, filtrování a zobrazení + rozvržení, které jste vybrali pro tento pohled, budou trvale odstraněny a nelze je obnovit." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Ručně" } }, + "project_members": { + "full_name": "Celé jméno", + "display_name": "Zobrazované jméno", + "email": "E-mail", + "joining_date": "Datum připojení", + "role": "Role" + }, "project": { "members_import": { "title": "Importovat členy z CSV", diff --git a/packages/i18n/src/locales/cs/settings.json b/packages/i18n/src/locales/cs/settings.json index 46e7b0c5be1..50b375c8451 100644 --- a/packages/i18n/src/locales/cs/settings.json +++ b/packages/i18n/src/locales/cs/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Předvolby", + "description": "Přizpůsobte si prostředí aplikace podle toho, jak pracujete" + }, "notifications": { + "heading": "E-mailová oznámení", + "description": "Zůstaňte v obraze u pracovních položek, které odebíráte. Aktivujte toto pro zasílání oznámení.", "select_default_view": "Vybrat výchozí zobrazení", "compact": "Kompaktní", "full": "Celá obrazovka" + }, + "security": { + "heading": "Zabezpečení" + }, + "api_tokens": { + "title": "Osobní přístupové tokeny", + "description": "Generujte bezpečné API tokeny pro integraci vašich dat s externími systémy a aplikacemi." + }, + "activity": { + "heading": "Aktivita", + "description": "Sledujte vaše nedávné akce a změny napříč všemi projekty a pracovními položkami." + }, + "connections": { + "title": "Spojení", + "heading": "Spojení", + "description": "Spravujte nastavení spojení vašeho pracovního prostoru." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Zabezpečení", "activity": "Aktivita", - "appearance": "Vzhled", + "preferences": "Předvolby", "notifications": "Oznámení", + "api-tokens": "Osobní přístupové tokeny", "connections": "Spojení" }, "tabs": { diff --git a/packages/i18n/src/locales/cs/template.json b/packages/i18n/src/locales/cs/template.json index c81e8c64587..139cebcbfb9 100644 --- a/packages/i18n/src/locales/cs/template.json +++ b/packages/i18n/src/locales/cs/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Šablony", "description": "Ušetřete 80 % času stráveného vytvářením projektů, pracovních položek a stránek, když používáte šablony.", + "new_project_template": "Nová šablona projektu", + "new_work_item_template": "Nová šablona pracovní položky", + "new_page_template": "Nová šablona stránky", "options": { "project": { "label": "Šablony projektů" @@ -157,6 +160,14 @@ "required": "Alespoň jedno klíčové slovo je povinné" } }, + "website": { + "label": "URL webové stránky", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Neplatná URL", + "maxLength": "URL by měla být kratší než 800 znaků" + } + }, "company_name": { "label": "Název společnosti", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Neplatná emailová adresa", - "required": "Email podpory je povinný", "maxLength": "Email podpory by měl být kratší než 255 znaků" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": "Zatím žádné štítky. Vytvořte štítky, abyste pomohli organizovat a filtrovat pracovní položky v projektu." }, + "no_modules": { + "description": "Zatím žádné moduly. Organizujte práci do dílčích projektů s vyhrazenými vedoucími a přiřazenými osobami." + }, "no_work_items": { "description": "Zatím žádné pracovní položky. Přidejte jednu, abyste strukturovali svou práci lépe." }, diff --git a/packages/i18n/src/locales/cs/tour.json b/packages/i18n/src/locales/cs/tour.json index 67328840166..2e5f7dc36c5 100644 --- a/packages/i18n/src/locales/cs/tour.json +++ b/packages/i18n/src/locales/cs/tour.json @@ -110,6 +110,12 @@ "description": "Pracovní položku lze odložit, abyste ji zkontrolovali později. Přesune se na konec seznamu otevřených požadavků." } }, + "mcp_connectors": { + "step_zero": { + "title": "Přestaňte přepínat záložky. Propojte svůj svět.", + "description": "Propojte GitHub, Slack pro sledování PR a shrnutí chatů přímo v Plane AI." + } + }, "navigation": { "modal": { "title": "Navigace, nově promyšlená", diff --git a/packages/i18n/src/locales/cs/wiki.json b/packages/i18n/src/locales/cs/wiki.json index 48849171538..eda8d97458b 100644 --- a/packages/i18n/src/locales/cs/wiki.json +++ b/packages/i18n/src/locales/cs/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Stránku se nepodařilo vytvořit nebo přidat do kolekce. Zkuste to prosím znovu.", "collection_link_copied": "Odkaz na kolekci byl zkopírován do schránky." } + }, + "wiki": { + "upgrade_flow": { + "title": "Upgradujte pro odemčení Wiki", + "description": "Odemkněte veřejné stránky, historii verzí, sdílené stránky, spolupráci v reálném čase a stránky pracovního prostoru pro wiki, firemní dokumentaci a znalostní báze s Plane Pro.", + "upgrade_button": { + "text": "Upgradovat" + }, + "learn_more_button": { + "text": "Zjistit více" + }, + "download_button": { + "text": "Stáhnout data", + "loading": "Stahování" + }, + "tabs": { + "nested_pages": "Vnořené stránky", + "add_embeds": "Přidat vložený obsah", + "publish_pages": "Publikovat stránky", + "comments": "Komentáře" + } + }, + "nested_pages_download_banner": { + "title": "Vnořené stránky vyžadují placený plán. Upgradujte pro jejich odemčení." + } } } diff --git a/packages/i18n/src/locales/cs/work-item-type.json b/packages/i18n/src/locales/cs/work-item-type.json index 2cde32aec14..3380b7b9865 100644 --- a/packages/i18n/src/locales/cs/work-item-type.json +++ b/packages/i18n/src/locales/cs/work-item-type.json @@ -3,11 +3,25 @@ "label": "Typy pracovních položek", "label_lowercase": "typy pracovních položek", "settings": { - "title": "Typy pracovních položek", + "description": "Přizpůsobte si a přidejte vlastní vlastnosti, abyste to upravili podle potřeb vašeho týmu.", + "cant_delete_default_message": "Tento typ pracovního položky nelze odstranit, protože je nastaven jako výchozí pro tento projekt.", + "set_as_default": "Nastavit jako výchozí", + "cant_set_default_inactive_message": "Před nastavením jako výchozí tento typ aktivujte", + "set_default_confirmation": { + "title": "Nastavit jako výchozí typ pracovní položky", + "description": "Nastavením {name} jako výchozího se tento typ importuje do všech projektů v tomto pracovním prostoru. Všechny nové pracovní položky budou tento typ používat ve výchozím nastavení.", + "confirm_button": "Nastavit jako výchozí" + }, "properties": { "title": "Vlastní vlastnosti", + "description": "Vytvářejte a přizpůsobujte vlastnosti.", "tooltip": "Každý typ pracovních položek má výchozí sadu vlastností jako Název, Popis, Přiřazený, Stav, Priorita, Datum zahájení, Datum splatnosti, Modul, Cyklus atd. Můžete také přizpůsobit a přidat své vlastní vlastnosti, aby vyhovovaly potřebám vašeho týmu.", "add_button": "Přidat novou vlastnost", + "project": { + "add_button": { + "import_from_workspace": "Importovat z pracovního prostoru" + } + }, "dropdown": { "label": "Typ vlastnosti", "placeholder": "Vyberte typ" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Vytvořit novou vlastní vlastnost", + "update": "Aktualizovat vlastní vlastnost" + }, "form": { "display_name": { "placeholder": "Název" @@ -213,9 +231,50 @@ "description": "Nové vlastnosti, které přidáte pro tento typ pracovních položek, se zde zobrazí." } }, + "types": { + "title": "Typy", + "description": "Vytvářejte a přizpůsobujte typy pracovních položek s vlastnostmi.", + "sort_options": { + "project_count": "Počet projektů, do kterých patří" + }, + "filter_options": { + "show_active": "Zobrazit aktivní", + "show_inactive": "Zobrazit neaktivní" + }, + "project": { + "add_button": { + "create_new": "Vytvořit nový", + "import_from_workspace": "Importovat z pracovního prostoru" + }, + "banner": { + "with_access": "Povolte typy pracovních položek pro import typů z úrovně pracovního prostoru", + "without_access": "Typy pracovních položek jsou zakázány. Kontaktujte správce pracovního prostoru, aby je povolil v nastavení pracovního prostoru." + } + } + }, + "linked_properties": { + "title": "Vlastní vlastnosti", + "add_button": "Přidat vlastnosti", + "modal": { + "title": "Přidat vlastnosti", + "empty": { + "title": "Žádné vlastnosti nejsou k dispozici", + "description": "Všechny vlastnosti jsou již propojeny s tímto typem." + } + }, + "unlink_confirmation": { + "title": "Zrušit propojení vlastnosti", + "description": "Zrušení propojení této vlastnosti trvale odstraní všechny její hodnoty napříč každou pracovní položkou používající tento typ. Tuto akci nelze vrátit zpět.", + "input_label": "Napište", + "input_label_suffix": "pro pokračování:", + "confirm": "Zrušit propojení vlastnosti", + "loading": "Rušení propojení" + } + }, "item_delete_confirmation": { "title": "Smazat tento typ", "description": "Odstranění typů může vést ke ztrátě stávajících dat.", + "can_disable_warning": "Chcete místo toho zakázat tento typ?", "primary_button": "Ano, smazat", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Výchozí typ pracovní položky nelze odstranit", "cannot_delete_work_item_type_with_associated_work_items": "Typ pracovní položky s přidruženými pracovními položkami nelze odstranit" - }, - "can_disable_warning": "Chcete místo toho zakázat tento typ?" - }, - "cant_delete_default_message": "Tento typ pracovního položky nelze odstranit, protože je nastaven jako výchozí pro tento projekt.", - "set_as_default": "Nastavit jako výchozí", - "cant_set_default_inactive_message": "Před nastavením jako výchozí tento typ aktivujte", - "set_default_confirmation": { - "title": "Nastavit jako výchozí typ pracovní položky", - "description": "Nastavením {name} jako výchozího se tento typ importuje do všech projektů v tomto pracovním prostoru. Všechny nové pracovní položky budou tento typ používat ve výchozím nastavení.", - "confirm_button": "Nastavit jako výchozí" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Chyba!", "message": { + "default": "Nepodařilo se vytvořit typ pracovní položky. Zkuste to prosím znovu!", "conflict": "Typ {name} již existuje. Zvolte jiné jméno." } } @@ -269,6 +320,7 @@ "error": { "title": "Chyba!", "message": { + "default": "Nepodařilo se aktualizovat typ pracovní položky. Zkuste to prosím znovu!", "conflict": "Typ {name} již existuje. Zvolte jiné jméno." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Chyba ověření!", + "title": "Uložením se přeruší stávající vazby", "content": { "intro": "Typ pracovní položky {workItemTypeName} obsahuje:", - "parent_items": "{count, plural, one {nadřazenou pracovní položku} few {nadřazené pracovní položky} other {nadřazených pracovních položek}}", + "parent_items": "{count, plural, one {Bude odstraněna # nadřazená vazba} few {Budou odstraněny # nadřazené vazby} other {Bude odstraněno # nadřazených vazeb}}.", "child_items": "{count, plural, one {podřazenou pracovní položku} few {podřazené pracovní položky} other {podřazených pracovních položek}}", "parent_line_suffix_when_also_children": ", a ", "footer": "Tato změna odstraní nadřazené a podřazené vztahy u stávajících pracovních položek typu {workItemTypeName}." }, "confirm_input": { - "label": "Pro pokračování napište „Potvrdit“.", - "placeholder": "Potvrdit" + "label": "Pro pokračování napište „potvrdit“.", + "placeholder": "potvrdit" }, "error_toast": { "title": "Chyba!", - "message": "Nepodařilo se přerušit hierarchii. Zkuste to prosím znovu." + "message": "Nepodařilo se zrušit propojení a uložit. Zkuste to prosím znovu." }, "confirm_button": { - "loading": "Používání", - "default": "Použít a odpojit" + "loading": "Ukládání", + "default": "Uložit přesto" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/cs/work-item.json b/packages/i18n/src/locales/cs/work-item.json index e378bdd9adf..2fe97ce830d 100644 --- a/packages/i18n/src/locales/cs/work-item.json +++ b/packages/i18n/src/locales/cs/work-item.json @@ -20,6 +20,7 @@ "due_date": "Přidat termín", "parent": "Přidat nadřazenou pracovní položku", "sub_issue": "Přidat podřízenou pracovní položku", + "dependency": "Přidat závislost", "relation": "Přidat vztah", "link": "Přidat odkaz", "existing": "Přidat existující pracovní položku" @@ -110,6 +111,43 @@ "copy_link": { "success": "Odkaz na komentář byl zkopírován do schránky", "error": "Chyba při kopírování odkazu na komentář. Zkuste to prosím později." + }, + "replies": { + "create": { + "submit_button": "Přidat odpověď", + "placeholder": "Přidat odpověď" + }, + "toast": { + "fetch": { + "error": { + "message": "Načtení odpovědí se nezdařilo" + } + }, + "create": { + "success": { + "message": "Odpověď úspěšně vytvořena" + }, + "error": { + "message": "Vytvoření odpovědi se nezdařilo" + } + }, + "update": { + "success": { + "message": "Odpověď úspěšně aktualizována" + }, + "error": { + "message": "Aktualizace odpovědi se nezdařila" + } + }, + "delete": { + "success": { + "message": "Odpověď úspěšně smazána" + }, + "error": { + "message": "Smazání odpovědi se nezdařilo" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Zrušit výběr všeho" }, "open_in_full_screen": "Otevřít pracovní položku na celou obrazovku", + "duplicate": { + "modal": { + "title": "Vytvořit kopii do jiného projektu", + "description1": "Toto vytvoří kopii pracovní položky.", + "description2": "Při duplikování budou odstraněna všechna data vlastností.", + "placeholder": "Vyberte projekt" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Pracovní položka úspěšně duplikována" + }, + "error": { + "message": "Duplikování pracovní položky se nezdařilo" + } + } + }, + "pages": { + "link_pages": "Propojit stránky", + "show_wiki_pages": "Zobrazit wiki stránky", + "link_pages_to": "Propojit stránky s", + "linked_pages": "Propojené stránky", + "no_description": "Toto je prázdná stránka. Napište něco dovnitř a uvidíte to zde jako tento zástupný text", + "toasts": { + "link": { + "success": { + "title": "Stránky aktualizovány", + "message": "Stránky úspěšně aktualizovány" + }, + "error": { + "title": "Aktualizace stránek se nezdařila", + "message": "Aktualizace stránek se nezdařila" + } + }, + "remove": { + "success": { + "title": "Stránka odstraněna", + "message": "Stránka úspěšně odstraněna" + }, + "error": { + "title": "Odstranění stránky se nezdařilo", + "message": "Odstranění stránky se nezdařilo" + } + } + } + }, "vote": { "click_to_upvote": "Klikněte pro hlasování nahoru", "click_to_downvote": "Klikněte pro hlasování dolů", @@ -241,54 +326,6 @@ "title": "Nelze aktualizovat pracovní položky", "message": "Změna stavu není povolena pro některé pracovní položky. Ujistěte se, že je změna stavu povolena." } - }, - "workflows": { - "toggle": { - "title": "Povolit workflow", - "description": "Nastavte workflow pro řízení pohybu pracovních položek", - "no_states_tooltip": "Do workflow nebyly přidány žádné stavy.", - "toast": { - "loading": { - "enabling": "Povolování workflow", - "disabling": "Vypínání workflow" - }, - "success": { - "title": "Úspěch!", - "message": "Workflow byla úspěšně povolena." - }, - "error": { - "title": "Chyba!", - "message": "Nepodařilo se povolit workflow. Zkuste to prosím znovu." - } - } - }, - "heading": "Workflow", - "description": "Automatizujte přechody pracovních položek a nastavte pravidla, která řídí, jak úkoly procházejí projektovým procesem.", - "add_button": "Přidat nový workflow", - "search": "Hledat workflow", - "detail": { - "define": "Definovat workflow", - "add_states": "Přidat stavy", - "unmapped_states": { - "title": "Byly zjištěny nepřiřazené stavy", - "description": "Některé pracovní položky vybraných typů jsou aktuálně ve stavech, které v tomto workflow neexistují.", - "note": "Pokud tento workflow povolíte, tyto položky se automaticky přesunou do výchozího stavu tohoto workflow.", - "label": "Chybějící stavy", - "tooltip": "Některé pracovní položky jsou ve stavech, které nejsou mapovány do tohoto workflow. Otevřete workflow a zkontrolujte jej." - } - }, - "select_states": { - "empty_state": { - "title": "Všechny stavy jsou použity", - "description": "Všechny stavy definované pro tento projekt jsou již obsaženy ve vašem aktuálním workflow." - } - }, - "default_footer": { - "fallback_message": "Tento workflow se vztahuje na jakýkoli typ pracovní položky, který není přiřazen k žádnému workflow." - }, - "create": { - "heading": "Vytvořit nový workflow" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/cs/workspace-settings.json b/packages/i18n/src/locales/cs/workspace-settings.json index f5940425d39..3b34a6114b9 100644 --- a/packages/i18n/src/locales/cs/workspace-settings.json +++ b/packages/i18n/src/locales/cs/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Fakturace a plány", + "description": "Vyberte si plán, spravujte předplatná a snadno je upgradujte, jak rostou vaše potřeby.", "title": "Fakturace a plány", "current_plan": "Aktuální plán", "free_plan": "Používáte bezplatný plán", "view_plans": "Zobrazit plány" }, "exports": { + "heading": "Exporty", + "description": "Exportujte data projektu v různých formátech a přistupujte k historii exportů s odkazy ke stažení.", "title": "Exporty", "exporting": "Exportování", "previous_exports": "Předchozí exporty", "export_separate_files": "Exportovat data do samostatných souborů", + "exporting_projects": "Export projektu", + "format": "Formát", "filters_info": "Použijte filtry k exportu konkrétních pracovních položek podle vašich kritérií.", "modal": { "title": "Exportovat do", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooky", + "description": "Automatizujte oznámení externím službám při výskytu událostí projektu.", "title": "Webhooky", "add_webhook": "Přidat webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integrace", + "heading": "Integrace", + "description": "Propojte se s oblíbenými nástroji a službami pro synchronizaci vaší práce napříč celým ekosystémem.", "page_title": "Pracujte se svými daty Plane v dostupných aplikacích nebo ve svých vlastních.", "page_description": "Zobrazte všechny integrace používané tímto pracovním prostorem nebo vámi." }, "imports": { - "title": "Importy" + "title": "Importy", + "heading": "Importy", + "description": "Propojte a importujte data z vašich stávajících nástrojů pro řízení projektů pro zefektivnění integrace pracovního postupu." }, "worklogs": { - "title": "Pracovní záznamy" + "title": "Pracovní záznamy", + "heading": "Pracovní záznamy", + "description": "Stáhněte si pracovní záznamy neboli časové výkazy pro kohokoli v jakémkoli projektu." }, "group_syncing": { "title": "Synchronizace skupin", @@ -242,7 +256,10 @@ "description": "Nakonfigurujte svou doménu a povolte jednotné přihlašování" }, "project_states": { - "title": "Stavy projektů" + "title": "Stavy projektů", + "heading": "Zobrazit přehled pokroku pro všechny projekty.", + "description": "Stavy projektů jsou funkce výhradně Plane pro sledování pokroku všech vašich projektů podle libovolné vlastnosti projektu.", + "go_to_settings": "Přejít do nastavení" }, "projects": { "title": "Projekty", @@ -252,6 +269,16 @@ "labels": "Štítky projektů" } }, + "templates": { + "title": "Šablony", + "heading": "Šablony", + "description": "Ušetřete 80 % času stráveného vytvářením projektů, pracovních položek a stránek, když použijete šablony." + }, + "relations": { + "title": "Vztahy", + "heading": "Vztahy", + "description": "Vytvářejte a spravujte typy vztahů, které propojují pracovní položky napříč vaším pracovním prostorem." + }, "cancel_trial": { "title": "Nejprve zrušte svou zkušební verzi.", "description": "Máte aktivní zkušební verzi jednoho z našich placených plánů. Nejprve ji prosím zrušte, abyste mohli pokračovat.", @@ -263,6 +290,7 @@ "cancel_error_message": "Zkuste to prosím znovu." }, "applications": { + "internal": "Interní", "title": "Aplikace", "applicationId_copied": "ID aplikace zkopírováno do schránky", "clientId_copied": "ID klienta zkopírováno do schránky", @@ -271,10 +299,61 @@ "your_apps": "Vaše aplikace", "connect": "Připojit", "connected": "Připojeno", + "disconnect": "Odpojit", "install": "Instalovat", "installed": "Instalováno", "configure": "Konfigurovat", "app_available": "Tuto aplikaci jste zpřístupnili pro použití s pracovním prostorem Plane", + "app_credentials_regenrated": { + "title": "Přihlašovací údaje aplikace byly úspěšně znovu vygenerovány", + "description": "Nahraďte klientský klíč všude, kde je používán. Předchozí klíč již není platný." + }, + "app_created": { + "title": "Aplikace byla úspěšně vytvořena", + "description": "Použijte přihlašovací údaje k instalaci aplikace do pracovního prostoru Plane" + }, + "installed_apps": "Nainstalované aplikace", + "all_apps": "Všechny aplikace", + "internal_apps": "Interní aplikace", + "app_name_title": "Jak pojmenujete tuto aplikaci", + "app_description_title": { + "label": "Dlouhý popis", + "placeholder": "Napište dlouhý popis pro tržiště. Stiskněte '/' pro příkazy." + }, + "authorization_grant_type": { + "title": "Typ připojení", + "description": "Vyberte, zda má být vaše aplikace nainstalována jednou pro pracovní prostor nebo zda má každý uživatel připojit svůj vlastní účet" + }, + "website": { + "title": "Webová stránka", + "description": "Odkaz na webové stránky vaší aplikace.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Tvůrce aplikací", + "description": "Osoba nebo organizace, která vytváří aplikaci." + }, + "app_maker_error": "Tvůrce aplikace je povinný", + "setup_url": { + "label": "URL nastavení", + "description": "Uživatelé budou po instalaci aplikace přesměrováni na tuto URL.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL", + "description": "Sem budeme odesílat události webhook a aktualizace z pracovních prostorů, kde je vaše aplikace nainstalována.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Tajný klíč webhooku", + "description": "Tajný klíč používaný k ověření příchozích požadavků webhooku.", + "placeholder": "Zadejte náhodný tajný klíč" + }, + "redirect_uris": { + "label": "Přesměrovací URI (oddělené mezerou)", + "description": "Uživatelé budou po ověření pomocí Plane přesměrováni na tuto cestu.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Připojte pracovní prostor Plane pro začátek používání", "client_id_and_secret": "ID a Tajemství Klienta", "client_id_and_secret_description": "Zkopírujte a uložte tento tajný klíč. Po kliknutí na Zavřít tento klíč již neuvidíte.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slug již existuje", "failed_to_create_application": "Nepodařilo se vytvořit aplikaci", "upload_logo": "Nahrát Logo", - "app_name_title": "Jak pojmenujete tuto aplikaci", "app_name_error": "Název aplikace je povinný", "app_short_description_title": "Dejte této aplikaci krátký popis", "app_short_description_error": "Krátký popis aplikace je povinný", - "app_description_title": { - "label": "Dlouhý popis", - "placeholder": "Napište dlouhý popis pro tržiště. Stiskněte '/' pro příkazy." - }, - "authorization_grant_type": { - "title": "Typ připojení", - "description": "Vyberte, zda má být vaše aplikace nainstalována jednou pro pracovní prostor nebo zda má každý uživatel připojit svůj vlastní účet" - }, "app_description_error": "Popis aplikace je povinný", "app_slug_title": "Slug aplikace", "app_slug_error": "Slug aplikace je povinný", - "app_maker_title": "Tvůrce aplikace", - "app_maker_error": "Tvůrce aplikace je povinný", + "invalid_website_error": "Neplatná webová stránka", "webhook_url_title": "URL Webhooku", "webhook_url_error": "URL webhooku je povinné", "invalid_webhook_url_error": "Neplatné URL webhooku", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Zadejte původy oddělené mezerami, odkud bude moci aplikace dělat požadavky, např. app.com example.com", "create_app": "Vytvořit aplikaci", "update_app": "Aktualizovat aplikaci", + "build_your_own_app": "Vytvořte si vlastní aplikaci", + "edit_app_details": "Upravit detaily aplikace", "regenerate_client_secret_description": "Znovu vygenerovat tajemství klienta. Po regeneraci můžete klíč zkopírovat nebo stáhnout do CSV souboru.", "regenerate_client_secret": "Znovu vygenerovat tajemství klienta", "regenerate_client_secret_confirm_title": "Jste si jisti, že chcete znovu vygenerovat tajemství klienta?", @@ -362,7 +433,6 @@ "video_url_title": "URL Video", "video_url_error": "URL Video je povinné", "invalid_video_url_error": "Neplatné URL Video", - "setup_url_title": "URL Nastavení", "setup_url_error": "URL Nastavení je povinné", "invalid_setup_url_error": "Neplatné URL Nastavení", "configuration_url_title": "URL Konfigurace", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Neplatný soubor nebo překračuje limit velikosti ({size} MB)", "uploading": "Nahrávání...", "upload_and_save": "Nahrát a uložit", - "app_credentials_regenrated": { - "title": "Přihlašovací údaje aplikace byly úspěšně znovu vygenerovány", - "description": "Nahraďte klientský klíč všude, kde je používán. Předchozí klíč již není platný." - }, - "app_created": { - "title": "Aplikace byla úspěšně vytvořena", - "description": "Použijte přihlašovací údaje k instalaci aplikace do pracovního prostoru Plane" - }, - "installed_apps": "Nainstalované aplikace", - "all_apps": "Všechny aplikace", - "internal_apps": "Interní aplikace", - "website": { - "title": "Webová stránka", - "description": "Odkaz na webové stránky vaší aplikace.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Tvůrce aplikací", - "description": "Osoba nebo organizace, která vytváří aplikaci." - }, - "setup_url": { - "label": "URL nastavení", - "description": "Uživatelé budou po instalaci aplikace přesměrováni na tuto URL.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL", - "description": "Sem budeme odesílat události webhook a aktualizace z pracovních prostorů, kde je vaše aplikace nainstalována.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "Přesměrovací URI (oddělené mezerou)", - "description": "Uživatelé budou po ověření pomocí Plane přesměrováni na tuto cestu.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Žádost o instalaci", "app_consent_no_access_description": "Tato aplikace může být nainstalována pouze po jejím nainstalování správcem pracovního prostoru. Kontaktujte svého správce pracovního prostoru, abyste mohli pokračovat.", + "app_consent_unapproved_title": "Tato aplikace zatím nebyla zkontrolována ani schválena společností Plane.", + "app_consent_unapproved_description": "Před připojením této aplikace k vašemu pracovnímu prostoru se ujistěte, že jí důvěřujete.", + "go_to_app": "Přejít na aplikaci", "enable_app_mentions": "Povolit zmínky o aplikaci", "enable_app_mentions_tooltip": "Když je tato možnost povolena, uživatelé mohou zmínit nebo přiřadit pracovní položky této aplikaci.", "scopes": "Rozsahy", @@ -433,15 +472,18 @@ "profile": "Přístup k informacím o profilu uživatele", "agents": "Přístup k agentům a všem souvisejícím entitám", "assets": "Přístup k aktivům a všem souvisejícím entitám" - }, - "build_your_own_app": "Vytvořte si vlastní aplikaci", - "edit_app_details": "Upravit detaily aplikace", - "internal": "Interní" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Sledujte, jak se vaše práce stává chytřejší a rychlejší s AI, která je nativně propojena s vaší prací a znalostní základnou." + }, + "runners": { + "title": "Plane Runner", + "heading": "Skripty", + "new_script": "Nový skript", + "description": "Automatizujte své pracovní postupy pomocí vlastních skriptů a pravidel automatizace." } }, "empty_state": { diff --git a/packages/i18n/src/locales/cs/workspace.json b/packages/i18n/src/locales/cs/workspace.json index 11a49f8148f..94b5a314412 100644 --- a/packages/i18n/src/locales/cs/workspace.json +++ b/packages/i18n/src/locales/cs/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Rozsah a poptávka", "custom": "Vlastní analytika" }, + "total": "Celkový počet {entity}", + "started_work_items": "Zahájené {entity}", + "backlog_work_items": "Backlog {entity}", + "un_started_work_items": "Nezahájené {entity}", + "completed_work_items": "Dokončené {entity}", + "project_insights": "Přehled projektu", + "summary_of_projects": "Souhrn projektů", + "all_projects": "Všechny projekty", + "trend_on_charts": "Trend na grafech", + "active_projects": "Aktivní projekty", + "customized_insights": "Přizpůsobené přehledy", + "created_vs_resolved": "Vytvořeno vs Vyřešeno", "empty_state": { - "customized_insights": { - "description": "Pracovní položky přiřazené vám, rozdělené podle stavu, se zde zobrazí.", - "title": "Zatím žádná data" + "project_insights": { + "title": "Zatím žádná data", + "description": "Pracovní položky přiřazené vám, rozdělené podle stavu, se zde zobrazí." }, "created_vs_resolved": { - "description": "Pracovní položky vytvořené a vyřešené v průběhu času se zde zobrazí.", - "title": "Zatím žádná data" + "title": "Zatím žádná data", + "description": "Pracovní položky vytvořené a vyřešené v průběhu času se zde zobrazí." }, - "project_insights": { + "customized_insights": { "title": "Zatím žádná data", "description": "Pracovní položky přiřazené vám, rozdělené podle stavu, se zde zobrazí." }, @@ -132,29 +144,11 @@ "description": "Analýza trendů příjmu se zobrazí zde. Přidejte pracovní položky do příjmu, abyste mohli sledovat trendy." } }, - "created_vs_resolved": "Vytvořeno vs Vyřešeno", - "customized_insights": "Přizpůsobené přehledy", - "backlog_work_items": "Backlog {entity}", - "active_projects": "Aktivní projekty", - "trend_on_charts": "Trend na grafech", - "all_projects": "Všechny projekty", - "summary_of_projects": "Souhrn projektů", - "project_insights": "Přehled projektu", - "started_work_items": "Zahájené {entity}", - "total_work_items": "Celkový počet {entity}", - "total_projects": "Celkový počet projektů", - "total_admins": "Celkový počet administrátorů", - "total_users": "Celkový počet uživatelů", - "total_intake": "Celkový příjem", - "un_started_work_items": "Nezahájené {entity}", - "total_guests": "Celkový počet hostů", - "completed_work_items": "Dokončené {entity}", - "total": "Celkový počet {entity}", + "upgrade_to_plan": "Přejděte na plán {plan}, abyste odemkli kartu {tab}", + "workitem_resolved_vs_pending": "Vyřešené vs. čekající pracovní položky", "projects_by_status": "Projekty podle stavu", "active_users": "Aktivní uživatelé", - "intake_trends": "Trendy příjmů", - "workitem_resolved_vs_pending": "Vyřešené vs. čekající pracovní položky", - "upgrade_to_plan": "Přejděte na plán {plan}, abyste odemkli kartu {tab}" + "intake_trends": "Trendy příjmů" }, "workspace_projects": { "label": "{count, plural, one {Projekt} few {Projekty} other {Projektů}}", @@ -318,6 +312,10 @@ "archived": { "title": "Zatím žádné archivované stránky", "description": "Archivujte stránky, které nejsou na vašem radaru. Zde k nim získáte přístup, když je potřebujete." + }, + "shared": { + "title": "Zatím žádné sdílené stránky", + "description": "Stránky, které s vámi ostatní sdíleli, se objeví zde." } } }, diff --git a/packages/i18n/src/locales/de/auth.json b/packages/i18n/src/locales/de/auth.json index 6a0ece6b35e..cce6c71fbec 100644 --- a/packages/i18n/src/locales/de/auth.json +++ b/packages/i18n/src/locales/de/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-Mail", - "placeholder": "name@unternehmen.de", - "errors": { - "required": "E-Mail ist erforderlich", - "invalid": "E-Mail ist ungültig" - } - }, - "password": { - "label": "Passwort", - "set_password": "Passwort festlegen", - "placeholder": "Passwort eingeben", - "confirm_password": { - "label": "Passwort bestätigen", - "placeholder": "Passwort bestätigen" - }, - "current_password": { - "label": "Aktuelles Passwort" - }, - "new_password": { - "label": "Neues Passwort", - "placeholder": "Neues Passwort eingeben" - }, - "change_password": { - "label": { - "default": "Passwort ändern", - "submitting": "Passwort wird geändert" - } - }, - "errors": { - "match": "Passwörter stimmen nicht überein", - "empty": "Bitte geben Sie Ihr Passwort ein", - "length": "Das Passwort sollte länger als 8 Zeichen sein", - "strength": { - "weak": "Das Passwort ist schwach", - "strong": "Das Passwort ist stark" - } - }, - "submit": "Passwort festlegen", - "toast": { - "change_password": { - "success": { - "title": "Erfolg!", - "message": "Das Passwort wurde erfolgreich geändert." - }, - "error": { - "title": "Fehler!", - "message": "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut." - } - } - } - }, - "unique_code": { - "label": "Einmaliger Code", - "placeholder": "123456", - "paste_code": "Fügen Sie den an Ihre E-Mail gesendeten Code ein", - "requesting_new_code": "Neuen Code anfordern", - "sending_code": "Code wird gesendet" - }, - "already_have_an_account": "Haben Sie bereits ein Konto?", - "login": "Anmelden", - "create_account": "Konto erstellen", - "new_to_plane": "Neu bei Plane?", - "back_to_sign_in": "Zurück zur Anmeldung", - "resend_in": "Erneut senden in {seconds} Sekunden", - "sign_in_with_unique_code": "Mit einmaligem Code anmelden", - "forgot_password": "Passwort vergessen?", - "username": { - "label": "Benutzername", - "placeholder": "Geben Sie Ihren Benutzernamen ein" - } - }, - "sign_up": { - "header": { - "label": "Erstellen Sie ein Konto und beginnen Sie, Ihre Arbeit mit Ihrem Team zu verwalten.", - "step": { - "email": { - "header": "Registrierung", - "sub_header": "" - }, - "password": { - "header": "Registrierung", - "sub_header": "Registrieren Sie sich mit einer Kombination aus E-Mail und Passwort." - }, - "unique_code": { - "header": "Registrierung", - "sub_header": "Registrieren Sie sich mit einem einmaligen Code, der an die oben angegebene E-Mail-Adresse gesendet wurde." - } - } - }, - "errors": { - "password": { - "strength": "Versuchen Sie, ein starkes Passwort zu wählen, um fortzufahren" - } - } - }, - "sign_in": { - "header": { - "label": "Melden Sie sich an und beginnen Sie, Ihre Arbeit mit Ihrem Team zu verwalten.", - "step": { - "email": { - "header": "Anmelden oder registrieren", - "sub_header": "" - }, - "password": { - "header": "Anmelden oder registrieren", - "sub_header": "Verwenden Sie Ihre E-Mail-Passwort-Kombination, um sich anzumelden." - }, - "unique_code": { - "header": "Anmelden oder registrieren", - "sub_header": "Melden Sie sich mit einem einmaligen Code an, der an die oben angegebene E-Mail-Adresse gesendet wurde." - } - } - } - }, - "forgot_password": { - "title": "Passwort zurücksetzen", - "description": "Geben Sie die verifizierte E-Mail-Adresse Ihres Benutzerkontos ein, und wir senden Ihnen einen Link zum Zurücksetzen des Passworts.", - "email_sent": "Wir haben Ihnen einen Link zum Zurücksetzen an Ihre E-Mail-Adresse gesendet.", - "send_reset_link": "Link zum Zurücksetzen senden", - "errors": { - "smtp_not_enabled": "Wir sehen, dass Ihr Administrator SMTP nicht aktiviert hat; wir können keinen Link zum Zurücksetzen des Passworts senden." - }, - "toast": { - "success": { - "title": "E-Mail gesendet", - "message": "Überprüfen Sie Ihren Posteingang auf den Link zum Zurücksetzen des Passworts. Sollte er innerhalb einiger Minuten nicht ankommen, sehen Sie bitte in Ihrem Spam-Ordner nach." - }, - "error": { - "title": "Fehler!", - "message": "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut." - } - } - }, - "reset_password": { - "title": "Neues Passwort festlegen", - "description": "Sichern Sie Ihr Konto mit einem starken Passwort" - }, - "set_password": { - "title": "Sichern Sie Ihr Konto", - "description": "Das Festlegen eines Passworts hilft Ihnen, sich sicher anzumelden" - }, - "sign_out": { - "toast": { - "error": { - "title": "Fehler!", - "message": "Abmelden fehlgeschlagen. Bitte versuchen Sie es erneut." - } - } - }, - "ldap": { - "header": { - "label": "Mit {ldapProviderName} fortfahren", - "sub_header": "Geben Sie Ihre {ldapProviderName}-Anmeldedaten ein" - } - } - }, "sso": { "header": "Identität", "description": "Konfigurieren Sie Ihre Domain, um auf Sicherheitsfunktionen einschließlich Single Sign-On zuzugreifen.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-Mail", + "placeholder": "name@unternehmen.de", + "errors": { + "required": "E-Mail ist erforderlich", + "invalid": "E-Mail ist ungültig" + } + }, + "password": { + "label": "Passwort", + "set_password": "Passwort festlegen", + "placeholder": "Passwort eingeben", + "confirm_password": { + "label": "Passwort bestätigen", + "placeholder": "Passwort bestätigen" + }, + "current_password": { + "label": "Aktuelles Passwort" + }, + "new_password": { + "label": "Neues Passwort", + "placeholder": "Neues Passwort eingeben" + }, + "change_password": { + "label": { + "default": "Passwort ändern", + "submitting": "Passwort wird geändert" + } + }, + "errors": { + "match": "Passwörter stimmen nicht überein", + "empty": "Bitte geben Sie Ihr Passwort ein", + "length": "Das Passwort sollte länger als 8 Zeichen sein", + "strength": { + "weak": "Das Passwort ist schwach", + "strong": "Das Passwort ist stark" + } + }, + "submit": "Passwort festlegen", + "toast": { + "change_password": { + "success": { + "title": "Erfolg!", + "message": "Das Passwort wurde erfolgreich geändert." + }, + "error": { + "title": "Fehler!", + "message": "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut." + } + } + } + }, + "unique_code": { + "label": "Einmaliger Code", + "placeholder": "123456", + "paste_code": "Fügen Sie den an Ihre E-Mail gesendeten Code ein", + "requesting_new_code": "Neuen Code anfordern", + "sending_code": "Code wird gesendet" + }, + "already_have_an_account": "Haben Sie bereits ein Konto?", + "login": "Anmelden", + "create_account": "Konto erstellen", + "new_to_plane": "Neu bei Plane?", + "back_to_sign_in": "Zurück zur Anmeldung", + "resend_in": "Erneut senden in {seconds} Sekunden", + "sign_in_with_unique_code": "Mit einmaligem Code anmelden", + "forgot_password": "Passwort vergessen?", + "username": { + "label": "Benutzername", + "placeholder": "Geben Sie Ihren Benutzernamen ein" + } + }, + "sign_up": { + "header": { + "label": "Erstellen Sie ein Konto und beginnen Sie, Ihre Arbeit mit Ihrem Team zu verwalten.", + "step": { + "email": { + "header": "Registrierung", + "sub_header": "" + }, + "password": { + "header": "Registrierung", + "sub_header": "Registrieren Sie sich mit einer Kombination aus E-Mail und Passwort." + }, + "unique_code": { + "header": "Registrierung", + "sub_header": "Registrieren Sie sich mit einem einmaligen Code, der an die oben angegebene E-Mail-Adresse gesendet wurde." + } + } + }, + "errors": { + "password": { + "strength": "Versuchen Sie, ein starkes Passwort zu wählen, um fortzufahren" + } + } + }, + "sign_in": { + "header": { + "label": "Melden Sie sich an und beginnen Sie, Ihre Arbeit mit Ihrem Team zu verwalten.", + "step": { + "email": { + "header": "Anmelden oder registrieren", + "sub_header": "" + }, + "password": { + "header": "Anmelden oder registrieren", + "sub_header": "Verwenden Sie Ihre E-Mail-Passwort-Kombination, um sich anzumelden." + }, + "unique_code": { + "header": "Anmelden oder registrieren", + "sub_header": "Melden Sie sich mit einem einmaligen Code an, der an die oben angegebene E-Mail-Adresse gesendet wurde." + } + } + } + }, + "forgot_password": { + "title": "Passwort zurücksetzen", + "description": "Geben Sie die verifizierte E-Mail-Adresse Ihres Benutzerkontos ein, und wir senden Ihnen einen Link zum Zurücksetzen des Passworts.", + "email_sent": "Wir haben Ihnen einen Link zum Zurücksetzen an Ihre E-Mail-Adresse gesendet.", + "send_reset_link": "Link zum Zurücksetzen senden", + "errors": { + "smtp_not_enabled": "Wir sehen, dass Ihr Administrator SMTP nicht aktiviert hat; wir können keinen Link zum Zurücksetzen des Passworts senden." + }, + "toast": { + "success": { + "title": "E-Mail gesendet", + "message": "Überprüfen Sie Ihren Posteingang auf den Link zum Zurücksetzen des Passworts. Sollte er innerhalb einiger Minuten nicht ankommen, sehen Sie bitte in Ihrem Spam-Ordner nach." + }, + "error": { + "title": "Fehler!", + "message": "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut." + } + } + }, + "reset_password": { + "title": "Neues Passwort festlegen", + "description": "Sichern Sie Ihr Konto mit einem starken Passwort" + }, + "set_password": { + "title": "Sichern Sie Ihr Konto", + "description": "Das Festlegen eines Passworts hilft Ihnen, sich sicher anzumelden" + }, + "sign_out": { + "toast": { + "error": { + "title": "Fehler!", + "message": "Abmelden fehlgeschlagen. Bitte versuchen Sie es erneut." + } + } + }, + "ldap": { + "header": { + "label": "Mit {ldapProviderName} fortfahren", + "sub_header": "Geben Sie Ihre {ldapProviderName}-Anmeldedaten ein" + } + } } } diff --git a/packages/i18n/src/locales/de/automation.json b/packages/i18n/src/locales/de/automation.json index d12403b2a7e..66379d402b2 100644 --- a/packages/i18n/src/locales/de/automation.json +++ b/packages/i18n/src/locales/de/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Zurück", "next": "Aktion hinzufügen" + }, + "warning": { + "disabled_trigger_switching": "Sie können den Auslösertyp nach der Erstellung nicht mehr ändern" } }, "condition": { @@ -71,9 +74,6 @@ "change_property": "Eigenschaft ändern", "run_script": "Skript ausführen" }, - "run_script_block": { - "title": "Skript ausführen" - }, "configuration": { "label": "Konfiguration", "change_property": { @@ -93,6 +93,9 @@ "comment_block": { "title": "Kommentar hinzufügen" }, + "run_script_block": { + "title": "Skript ausführen" + }, "change_property_block": { "title": "Eigenschaft ändern" }, @@ -119,6 +122,8 @@ }, "table": { "title": "Automatisierungstitel", + "scope": "Bereich", + "projects": "Projekte", "last_run_on": "Zuletzt ausgeführt am", "created_on": "Erstellt am", "last_updated_on": "Zuletzt aktualisiert am", @@ -234,6 +239,35 @@ "description": "Automatisierungen sind eine Möglichkeit, Aufgaben in Ihrem Projekt zu automatisieren.", "sub_description": "Gewinnen Sie 80% Ihrer Verwaltungszeit zurück, wenn Sie Automatisierungen verwenden." } + }, + "global_automations": { + "project_select": { + "label": "Projekte auswählen, für die diese Automatisierung ausgeführt werden soll", + "all_projects": { + "label": "Alle Projekte", + "description": "Automatisierung wird für alle Projekte im Arbeitsbereich ausgeführt." + }, + "select_projects": { + "label": "Projekte auswählen", + "description": "Automatisierung wird für ausgewählte Projekte im Arbeitsbereich ausgeführt.", + "placeholder": "Projekte auswählen" + } + }, + "settings": { + "sidebar_label": "Automatisierungen", + "title": "Automatisierungen", + "description": "Standardisieren Sie Prozesse in Ihrem Arbeitsbereich mit globalen Automatisierungen." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Projekt", + "multiple": "Mehrere", + "all": "Alle" + } + } + } } } } diff --git a/packages/i18n/src/locales/de/common.json b/packages/i18n/src/locales/de/common.json index 1d8a5430d85..1e18d4ee26e 100644 --- a/packages/i18n/src/locales/de/common.json +++ b/packages/i18n/src/locales/de/common.json @@ -1,5 +1,4 @@ { - "unknown_user": "Unbekannter Benutzer", "cloud_maintenance_message": { "we_are_working_on_this_if_you_need_immediate_assistance": "Wir arbeiten daran. Wenn Sie sofortige Hilfe benötigen,", "reach_out_to_us": "kontaktieren Sie uns", @@ -18,6 +17,7 @@ "no": "Nein", "ok": "OK", "name": "Name", + "unknown_user": "Unbekannter Benutzer", "description": "Beschreibung", "search": "Suchen", "add_member": "Mitglied hinzufügen", @@ -60,14 +60,6 @@ "preferences": "Einstellungen", "language_and_time": "Sprache und Zeit", "notifications": "Benachrichtigungen", - "timezone_setting": "Aktuelle Zeitzoneneinstellung.", - "language_setting": "Wählen Sie die in der Benutzeroberfläche verwendete Sprache.", - "settings_moved_to_preferences": "Zeitzonen- und Spracheinstellungen wurden in die Einstellungen verschoben.", - "go_to_preferences": "Zu den Einstellungen", - "pages": "Seiten", - "target_date": "Zieldatum", - "settings_description": "Verwalten Sie Ihre Konto-, Arbeitsbereichs- und Projekteinstellungen an einem Ort. Wechseln Sie zwischen den Tabs, um sie einfach zu konfigurieren.", - "back_to_workspace": "Zurück zum Arbeitsbereich", "workspaces": "Arbeitsbereiche", "create_workspace": "Arbeitsbereich erstellen", "invitations": "Einladungen", @@ -79,6 +71,10 @@ "something_went_wrong_please_try_again": "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut.", "load_more": "Mehr laden", "select_or_customize_your_interface_color_scheme": "Wählen Sie Ihr Interface-Farbschema aus oder passen Sie es an.", + "timezone_setting": "Aktuelle Zeitzoneneinstellung.", + "language_setting": "Wählen Sie die in der Benutzeroberfläche verwendete Sprache.", + "settings_moved_to_preferences": "Zeitzonen- und Spracheinstellungen wurden in die Einstellungen verschoben.", + "go_to_preferences": "Zu den Einstellungen", "select_the_cursor_motion_style_that_feels_right_for_you": "Wählen Sie den Cursorbewegungsstil, der sich für Sie richtig anfühlt.", "theme": "Thema", "smooth_cursor": "Sanfter Cursor", @@ -173,6 +169,7 @@ "project_created_successfully": "Projekt erfolgreich erstellt", "project_created_successfully_description": "Das Projekt wurde erfolgreich erstellt. Sie können nun Arbeitselemente hinzufügen.", "project_name_already_taken": "Der Projektname ist bereits vergeben.", + "project_name_cannot_contain_special_characters": "Der Projektname darf keine Sonderzeichen enthalten.", "project_identifier_already_taken": "Der Projekt-Identifier ist bereits vergeben.", "project_cover_image_alt": "Titelbild des Projekts", "name_is_required": "Name ist erforderlich", @@ -217,6 +214,7 @@ "issues": "Arbeitselemente", "cycles": "Zyklen", "modules": "Module", + "pages": "Seiten", "intake": "Eingang", "renew": "Erneuern", "preview": "Vorschau", @@ -308,6 +306,7 @@ "start_date": "Startdatum", "end_date": "Enddatum", "due_date": "Fälligkeitsdatum", + "target_date": "Zieldatum", "estimate": "Schätzung", "change_parent_issue": "Übergeordnetes Arbeitselement ändern", "remove_parent_issue": "Übergeordnetes Arbeitselement entfernen", @@ -366,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Das neue Passwort muss von dem alten Passwort abweichen", "edited": "Bearbeitet", "bot": "Bot", + "settings_description": "Verwalten Sie Ihre Konto-, Arbeitsbereichs- und Projekteinstellungen an einem Ort. Wechseln Sie zwischen den Tabs, um sie einfach zu konfigurieren.", + "back_to_workspace": "Zurück zum Arbeitsbereich", "upgrade_request": "Bitten Sie Ihren Arbeitsbereichs-Admin um ein Upgrade.", "copied_to_clipboard": "In die Zwischenablage kopiert", "copied_to_clipboard_description": "Die URL wurde erfolgreich in Ihre Zwischenablage kopiert", @@ -432,6 +433,9 @@ "modules": "Module", "labels": "Labels", "label": "Label", + "admins": "Administratoren", + "users": "Benutzer", + "guests": "Gäste", "assignees": "Zugewiesene", "assignee": "Zugewiesen", "created_by": "Erstellt von", @@ -461,6 +465,8 @@ "work_item": "Arbeitselement", "work_items": "Arbeitselemente", "sub_work_item": "Untergeordnetes Arbeitselement", + "views": "Ansichten", + "pages": "Seiten", "add": "Hinzufügen", "warning": "Warnung", "updating": "Wird aktualisiert", @@ -506,7 +512,7 @@ "workspace_level": "Arbeitsbereichsebene", "order_by": { "label": "Sortieren nach", - "manual": "Manuell", + "manual": "Manuell - Rang", "last_created": "Zuletzt erstellt", "last_updated": "Zuletzt aktualisiert", "start_date": "Startdatum", @@ -542,6 +548,7 @@ "continue": "Fortfahren", "resend": "Erneut senden", "relations": "Beziehungen", + "dependencies": "Abhängigkeiten", "errors": { "default": { "title": "Fehler!", @@ -573,13 +580,33 @@ "quarter": "Quartal", "press_for_commands": "Drücken Sie '/' für Befehle", "click_to_add_description": "Klicken Sie, um eine Beschreibung hinzuzufügen", + "on_track": "Im Plan", + "off_track": "Außer Plan", + "at_risk": "Gefährdet", + "timeline": "Zeitleiste", + "completion": "Fertigstellung", + "upcoming": "Bevorstehend", + "completed": "Abgeschlossen", + "in_progress": "In Bearbeitung", + "planned": "Geplant", + "paused": "Pausiert", + "search": { + "label": "Suchen", + "placeholder": "Zum Suchen tippen", + "no_matches_found": "Keine Treffer gefunden", + "no_matching_results": "Keine passenden Ergebnisse", + "min_chars": "Geben Sie mindestens {count} Zeichen ein, um zu suchen", + "error": "Fehler beim Abrufen der Suchergebnisse", + "no_results": { + "title": "Keine passenden Ergebnisse", + "description": "Entfernen Sie die Suchkriterien, um alle Ergebnisse zu sehen" + } + }, "actions": { "edit": "Bearbeiten", "make_a_copy": "Kopie erstellen", "open_in_new_tab": "In neuem Tab öffnen", "copy_link": "Link kopieren", - "copy_markdown": "Markdown kopieren", - "reply": "Antworten", "copy_branch_name": "Branch-Name kopieren", "archive": "Archivieren", "restore": "Wiederherstellen", @@ -590,7 +617,9 @@ "clear_sorting": "Sortierung löschen", "show_weekends": "Wochenenden anzeigen", "enable": "Aktivieren", - "disable": "Deaktivieren" + "disable": "Deaktivieren", + "copy_markdown": "Markdown kopieren", + "reply": "Antworten" }, "name": "Name", "discard": "Verwerfen", @@ -603,6 +632,7 @@ "disabled": "Deaktiviert", "mandate": "Mandat", "mandatory": "Verpflichtend", + "global": "Global", "yes": "Ja", "no": "Nein", "please_wait": "Bitte warten", @@ -612,6 +642,7 @@ "or": "oder", "next": "Weiter", "back": "Zurück", + "retry": "Erneut versuchen", "cancelling": "Wird abgebrochen", "configuring": "Wird konfiguriert", "clear": "Löschen", @@ -666,52 +697,27 @@ "deactivated_user": "Deaktivierter Benutzer", "apply": "Anwenden", "applying": "Wird angewendet", - "users": "Benutzer", - "admins": "Administratoren", - "guests": "Gäste", - "on_track": "Im Plan", - "off_track": "Außer Plan", - "at_risk": "Gefährdet", - "timeline": "Zeitleiste", - "completion": "Fertigstellung", - "upcoming": "Bevorstehend", - "completed": "Abgeschlossen", - "in_progress": "In Bearbeitung", - "planned": "Geplant", - "paused": "Pausiert", + "overview": "Übersicht", "no_of": "Anzahl {entity}", "resolved": "Gelöst", + "get_started": "Loslegen", "worklogs": "Arbeitsberichte", "project_updates": "Projektaktualisierungen", - "overview": "Übersicht", "workflows": "Arbeitsabläufe", "templates": "Vorlagen", - "members_and_teamspaces": "Mitglieder & Teamspaces", - "open_in_full_screen": "{page} im Vollbild öffnen", - "views": "Ansichten", - "pages": "Seiten", - "dependencies": "Abhängigkeiten", - "search": { - "label": "Suchen", - "placeholder": "Zum Suchen tippen", - "no_matches_found": "Keine Treffer gefunden", - "no_matching_results": "Keine passenden Ergebnisse", - "min_chars": "Geben Sie mindestens {count} Zeichen ein, um zu suchen", - "error": "Fehler beim Abrufen der Suchergebnisse", - "no_results": { - "title": "Keine passenden Ergebnisse", - "description": "Entfernen Sie die Suchkriterien, um alle Ergebnisse zu sehen" - } - }, - "global": "Global", - "retry": "Erneut versuchen", - "get_started": "Loslegen", "business": "Business", + "members_and_teamspaces": "Mitglieder & Teamspaces", "recurring_work_items": "Wiederkehrende Arbeitselemente", "milestones": "Meilensteine", + "open_in_full_screen": "{page} im Vollbild öffnen", "details": "Details", "project_structure": "Projektstruktur", - "custom_properties": "Benutzerdefinierte Eigenschaften" + "custom_properties": "Benutzerdefinierte Eigenschaften", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "X-Achse", @@ -817,8 +823,6 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane ist nicht gestartet. Dies könnte daran liegen, dass einer oder mehrere Plane-Services nicht starten konnten.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Wählen Sie View Logs aus setup.sh und Docker-Logs, um sicherzugehen." }, - "workspace_dashboards": "Däschbords", - "pi_chat": "AI Tschät", "customize_navigation": "Navigation anpassen", "personal": "Persönlich", "accordion_navigation_control": "Akkordeon-Seitenleistennavigation", @@ -827,10 +831,12 @@ "enter_number_of_projects": "Anzahl der Projekte eingeben", "pin": "Anheften", "unpin": "Lösen", - "milestones": "Meilensteine", - "milestones_description": "Meilensteine bieten eine Ebene, um Arbeitselemente auf gemeinsame Fertigstellungstermine auszurichten.", + "workspace_dashboards": "Däschbords", + "pi_chat": "AI Tschät", "in_app": "In-App", "forms": "Forms", + "milestones": "Meilensteine", + "milestones_description": "Meilensteine bieten eine Ebene, um Arbeitselemente auf gemeinsame Fertigstellungstermine auszurichten.", "file_upload": { "upload_text": "Klicken Sie hier, um Datei hochzuladen", "drag_drop_text": "Drag and Drop", @@ -839,7 +845,6 @@ "missing_fields": "Fehlende Felder", "success": "{fileName} hochgeladen!" }, - "project_name_cannot_contain_special_characters": "Der Projektname darf keine Sonderzeichen enthalten.", "date": "Datum", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/de/empty-state.json b/packages/i18n/src/locales/de/empty-state.json index a98f18e28f4..74bc261a01f 100644 --- a/packages/i18n/src/locales/de/empty-state.json +++ b/packages/i18n/src/locales/de/empty-state.json @@ -249,14 +249,14 @@ "title": "Zeiterfassungen für alle Mitglieder verfolgen", "description": "Erfassen Sie Zeit für Arbeitselemente, um detaillierte Zeiterfassungen für jedes Teammitglied über Projekte hinweg anzuzeigen." }, + "group_syncing": { + "title": "Noch keine Gruppenzuordnungen" + }, "template_setting": { "title": "Noch keine Vorlagen", "description": "Reduzieren Sie die Einrichtungszeit, indem Sie Vorlagen für Projekte, Arbeitselemente und Seiten erstellen — und starten Sie neue Arbeit in Sekunden.", "cta_primary": "Vorlage erstellen" }, - "group_syncing": { - "title": "Noch keine Gruppenzuordnungen" - }, "workflows": { "title": "Noch keine Workflows", "description": "Erstellen Sie Workflows, um den Fortschritt Ihrer Arbeitselemente zu verwalten.", diff --git a/packages/i18n/src/locales/de/integration.json b/packages/i18n/src/locales/de/integration.json index c0f41166ee2..a9b4d5812c9 100644 --- a/packages/i18n/src/locales/de/integration.json +++ b/packages/i18n/src/locales/de/integration.json @@ -129,10 +129,6 @@ "webhook_secret_error": "Webhook Secret ist erforderlich", "connect_app": "App verbinden" }, - "bitbucket_dc_integration": { - "name": "Bitbucket Data Center", - "description": "Verbinden und synchronisieren Sie Ihre Bitbucket Data Center-Repositories mit Plane." - }, "slack_integration": { "name": "Slack", "description": "Verbinden Sie Ihren Slack-Workspace mit Plane.", @@ -198,6 +194,10 @@ "server_error_states": "Serverfehler beim Laden der Status" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Verbinden und synchronisieren Sie Ihre Bitbucket Data Center-Repositories mit Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Externe IdP-Token für API-Zugriff validieren.", @@ -301,12 +301,12 @@ "connect_app": "App verbinden" }, "silo_errors": { - "cannot_create_multiple_connections": "Sie haben Ihre Organisation bereits mit einem Arbeitsbereich verbunden. Bitte trennen Sie die bestehende Verbindung, bevor Sie eine neue herstellen.", "invalid_query_params": "Die angegebenen Abfrageparameter sind ungültig oder enthalten nicht die erforderlichen Felder", "invalid_installation_account": "Das angegebene Installationskonto ist nicht gültig", "generic_error": "Bei der Verarbeitung Ihrer Anfrage ist ein unerwarteter Fehler aufgetreten", "connection_not_found": "Die angeforderte Verbindung konnte nicht gefunden werden", "multiple_connections_found": "Es wurden mehrere Verbindungen gefunden, obwohl nur eine erwartet wurde", + "cannot_create_multiple_connections": "Sie haben Ihre Organisation bereits mit einem Arbeitsbereich verbunden. Bitte trennen Sie die bestehende Verbindung, bevor Sie eine neue herstellen.", "installation_not_found": "Die angeforderte Installation konnte nicht gefunden werden", "user_not_found": "Der angeforderte Benutzer konnte nicht gefunden werden", "error_fetching_token": "Fehler beim Abrufen des Authentifizierungstokens", @@ -314,13 +314,13 @@ "invalid_app_installation_id": "Fehler beim Installieren der App" }, "import_status": { - "progressing": "In Bearbeitung", "queued": "In Warteschlange", "created": "Erstellt", "initiated": "Eingeleitet", "pulling": "Abrufen", "timed_out": "Zeitüberschreitung", "pulled": "Abgerufen", + "progressing": "In Bearbeitung", "transforming": "Umwandeln", "transformed": "Umgewandelt", "pushing": "Hochladen", diff --git a/packages/i18n/src/locales/de/module.json b/packages/i18n/src/locales/de/module.json index 155d31990ea..9bb19b299db 100644 --- a/packages/i18n/src/locales/de/module.json +++ b/packages/i18n/src/locales/de/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modul} few {Module} other {Module}}", - "no_module": "Kein Modul" + "no_module": "Kein Modul", + "select": "Module hinzufügen" } } diff --git a/packages/i18n/src/locales/de/navigation.json b/packages/i18n/src/locales/de/navigation.json index a8441033dd0..bf22b25866a 100644 --- a/packages/i18n/src/locales/de/navigation.json +++ b/packages/i18n/src/locales/de/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Keine Ergebnisse gefunden" + } + } + }, "sidebar": { + "stickies": "Notizen", + "your_work": "Ihre Arbeit", "projects": "Projekte", "pages": "Seiten", "new_work_item": "Neues Arbeitselement", "home": "Startseite", - "your_work": "Ihre Arbeit", "inbox": "Posteingang", "workspace": "Arbeitsbereich", "views": "Ansichten", @@ -21,14 +29,6 @@ "epics": "Epics", "upgrade_plan": "Plan upgraden", "plane_pro": "Plane Pro", - "business": "Business", - "stickies": "Notizen" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Keine Ergebnisse gefunden" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/de/page.json b/packages/i18n/src/locales/de/page.json index e1e82c46830..10af7310003 100644 --- a/packages/i18n/src/locales/de/page.json +++ b/packages/i18n/src/locales/de/page.json @@ -42,9 +42,6 @@ } } }, - "open_button": "Navigationsbereich öffnen", - "close_button": "Navigationsbereich schließen", - "outline_floating_button": "Gliederung öffnen", "toasts": { "errors": { "wrong_name": "Der Notizname darf nicht länger als 100 Zeichen sein.", @@ -74,7 +71,10 @@ "title": "Notiz nicht entfernt", "message": "Die Notiz konnte nicht entfernt werden" } - } + }, + "open_button": "Navigationsbereich öffnen", + "close_button": "Navigationsbereich schließen", + "outline_floating_button": "Gliederung öffnen" }, "page_actions": { "move_page": { diff --git a/packages/i18n/src/locales/de/project-settings.json b/packages/i18n/src/locales/de/project-settings.json index 0eda3121b40..74afb0c94fe 100644 --- a/packages/i18n/src/locales/de/project-settings.json +++ b/packages/i18n/src/locales/de/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Mitglieder", "project_lead": "Projektleitung", + "project_lead_description": "Wählen Sie den Projektleiter für das Projekt aus.", "default_assignee": "Standardzuweisung", + "default_assignee_description": "Wählen Sie den Standard-Zuständigen für das Projekt aus.", + "project_subscribers": "Projektabonnenten", + "project_subscribers_description": "Wählen Sie Mitglieder aus, die Benachrichtigungen für dieses Projekt erhalten.", "guest_super_permissions": { "title": "Gastbenutzern Zugriff auf alle Elemente gewähren:", "sub_heading": "Gäste sehen alle Elemente im Projekt." @@ -30,11 +34,7 @@ "title": "Mitglieder einladen", "sub_heading": "Laden Sie Mitglieder in das Projekt ein.", "select_co_worker": "Wählen Sie einen Mitarbeiter" - }, - "project_lead_description": "Wählen Sie den Projektleiter für das Projekt aus.", - "default_assignee_description": "Wählen Sie den Standard-Zuständigen für das Projekt aus.", - "project_subscribers": "Projektabonnenten", - "project_subscribers_description": "Wählen Sie Mitglieder aus, die Benachrichtigungen für dieses Projekt erhalten." + } }, "states": { "heading": "Status", @@ -57,10 +57,10 @@ }, "estimates": { "heading": "Schätzungen", - "enable_description": "Sie helfen Ihnen, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.", + "description": "Sie helfen Ihnen, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.", "label": "Schätzungen", "title": "Schätzungen für mein Projekt aktivieren", - "description": "Sie helfen Ihnen, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.", + "enable_description": "Sie helfen Ihnen, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.", "no_estimate": "Keine Schätzung", "new": "Neues Schätzungssystem", "create": { @@ -73,16 +73,6 @@ "label": "Schätzung erstellen" }, "toasts": { - "switch": { - "success": { - "title": "Schätzungssystem erstellt", - "message": "Erfolgreich erstellt und aktiviert" - }, - "error": { - "title": "Fehler", - "message": "Etwas ist schiefgelaufen" - } - }, "created": { "success": { "title": "Schätzung erstellt", @@ -128,6 +118,16 @@ "title": "Neuordnung der Schätzungen fehlgeschlagen", "message": "Die Schätzungen konnten nicht neu geordnet werden, bitte versuchen Sie es erneut" } + }, + "switch": { + "success": { + "title": "Schätzungssystem erstellt", + "message": "Erfolgreich erstellt und aktiviert" + }, + "error": { + "title": "Fehler", + "message": "Etwas ist schiefgelaufen" + } } }, "validation": { @@ -177,9 +177,9 @@ "select": "Wählen Sie ein Schätzsystem" }, "automations": { + "label": "Automatisierungen", "heading": "Automatisierungen", "description": "Konfigurieren Sie automatisierte Aktionen, um Ihren Projektmanagement-Workflow zu optimieren und manuelle Aufgaben zu reduzieren.", - "label": "Automatisierungen", "auto-archive": { "title": "Geschlossene Arbeitselemente automatisch archivieren", "description": "Plane archiviert automatisch Arbeitselemente, die abgeschlossen oder abgebrochen wurden.", @@ -212,90 +212,116 @@ "description": "Konfigurieren Sie GitHub und andere Integrationen, um Ihre Projektarbeitsaufgaben zu synchronisieren." } }, - "cycles": { - "auto_schedule": { - "heading": "Automatische Zyklusplanung", - "description": "Halten Sie Zyklen ohne manuelle Einrichtung in Bewegung.", - "tooltip": "Erstellen Sie automatisch neue Zyklen basierend auf Ihrem gewählten Zeitplan.", - "edit_button": "Bearbeiten", - "form": { - "cycle_title": { - "label": "Zyklustitel", - "placeholder": "Titel", - "tooltip": "Der Titel wird für nachfolgende Zyklen mit Nummern ergänzt. Zum Beispiel: Design - 1/2/3", - "validation": { - "required": "Zyklustitel ist erforderlich", - "max_length": "Der Titel darf 255 Zeichen nicht überschreiten" - } - }, - "cycle_duration": { - "label": "Zyklusdauer", - "unit": "Wochen", - "validation": { - "required": "Zyklusdauer ist erforderlich", - "min": "Die Zyklusdauer muss mindestens 1 Woche betragen", - "max": "Die Zyklusdauer darf 30 Wochen nicht überschreiten", - "positive": "Die Zyklusdauer muss positiv sein" - } - }, - "cooldown_period": { - "label": "Abkühlungsphase", - "unit": "Tage", - "tooltip": "Pause zwischen Zyklen, bevor der nächste beginnt.", - "validation": { - "required": "Abkühlungsphase ist erforderlich", - "negative": "Die Abkühlungsphase darf nicht negativ sein" - } - }, - "start_date": { - "label": "Zyklus-Starttag", - "validation": { - "required": "Startdatum ist erforderlich", - "past": "Das Startdatum darf nicht in der Vergangenheit liegen" - } + "workflows": { + "toggle": { + "title": "Workflows aktivieren", + "description": "Legen Sie Workflows fest, um die Bewegung von Arbeitselementen zu steuern", + "no_states_tooltip": "Keine Status wurden dem Workflow hinzugefügt.", + "no_work_item_types_tooltip": "Keine Arbeitsaufgabentypen wurden dem Workflow hinzugefügt.", + "no_states_or_work_item_types_tooltip": "Keine Status oder Arbeitsaufgabentypen wurden dem Workflow hinzugefügt.", + "toast": { + "loading": { + "enabling": "Workflows werden aktiviert", + "disabling": "Workflows werden deaktiviert" }, - "number_of_cycles": { - "label": "Anzahl zukünftiger Zyklen", - "validation": { - "required": "Anzahl der Zyklen ist erforderlich", - "min": "Mindestens 1 Zyklus ist erforderlich", - "max": "Es können nicht mehr als 3 Zyklen geplant werden" - } + "success": { + "title": "Erfolg!", + "message": "Workflows erfolgreich aktiviert." }, - "auto_rollover": { - "label": "Automatische Übertragung von Arbeitselementen", - "tooltip": "Am Tag der Zyklusbeendigung werden alle unvollendeten Arbeitselemente in den nächsten Zyklus verschoben." + "error": { + "title": "Fehler!", + "message": "Workflows konnten nicht aktiviert werden. Bitte versuchen Sie es erneut." + } + } + }, + "heading": "Workflows", + "description": "Automatisieren Sie Übergänge von Arbeitselementen und legen Sie Regeln fest, um zu steuern, wie Aufgaben durch Ihre Projektpipeline fließen.", + "add_button": "Neuen Workflow hinzufügen", + "search": "Workflows suchen", + "detail": { + "define": "Workflow definieren", + "add_states": "Status hinzufügen", + "unmapped_states": { + "title": "Nicht zugeordnete Status erkannt", + "description": "Einige Arbeitselemente der ausgewählten Typen befinden sich derzeit in Status, die in diesem Workflow nicht vorhanden sind.", + "note": "Wenn Sie diesen Workflow aktivieren, werden diese Elemente automatisch in den Anfangsstatus dieses Workflows verschoben.", + "label": "Fehlende Status", + "tooltip": "Einige Arbeitselemente befinden sich in Status, die diesem Workflow nicht zugeordnet sind. Öffnen Sie den Workflow zur Überprüfung." + } + }, + "select_states": { + "empty_state": { + "title": "Alle Status werden verwendet", + "description": "Alle für dieses Projekt definierten Status sind bereits in Ihrem aktuellen Workflow vorhanden." + } + }, + "default_footer": { + "fallback_message": "Dieser Workflow gilt für jeden Arbeitselementtyp, der keinem Workflow zugeordnet ist." + }, + "create": { + "heading": "Neuen Workflow erstellen", + "name": { + "placeholder": "Einen eindeutigen Namen hinzufügen", + "validation": { + "max_length": "Der Name darf nicht mehr als 255 Zeichen haben", + "required": "Name ist erforderlich", + "invalid": "Der Name darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Apostrophe enthalten" } }, - "toast": { - "toggle": { - "loading_enable": "Automatische Zyklusplanung wird aktiviert", - "loading_disable": "Automatische Zyklusplanung wird deaktiviert", - "success": { - "title": "Erfolg!", - "message": "Automatische Zyklusplanung erfolgreich aktiviert." - }, - "error": { - "title": "Fehler!", - "message": "Aktivierung der automatischen Zyklusplanung fehlgeschlagen." - } - }, - "save": { - "loading": "Konfiguration der automatischen Zyklusplanung wird gespeichert", - "success": { - "title": "Erfolg!", - "message_create": "Konfiguration der automatischen Zyklusplanung erfolgreich gespeichert.", - "message_update": "Konfiguration der automatischen Zyklusplanung erfolgreich aktualisiert." - }, - "error": { - "title": "Fehler!", - "message_create": "Speichern der Konfiguration der automatischen Zyklusplanung fehlgeschlagen.", - "message_update": "Aktualisierung der Konfiguration der automatischen Zyklusplanung fehlgeschlagen." - } + "description": { + "placeholder": "Eine kurze Beschreibung hinzufügen", + "validation": { + "invalid": "Die Beschreibung darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Apostrophe enthalten" } + }, + "work_item_type": { + "label": "Arbeitselementtyp" + }, + "success": { + "title": "Erfolg!", + "message": "Workflow erfolgreich erstellt." + }, + "error": { + "title": "Fehler!", + "message": "Workflow konnte nicht erstellt werden. Bitte versuchen Sie es erneut." + } + }, + "update": { + "success": { + "title": "Erfolg!", + "message": "Workflow erfolgreich aktualisiert." + }, + "error": { + "title": "Fehler!", + "message": "Workflow konnte nicht aktualisiert werden. Bitte versuchen Sie es erneut." + } + }, + "delete": { + "loading": "Workflow wird gelöscht", + "success": { + "title": "Erfolg!", + "message": "Workflow erfolgreich gelöscht." + }, + "error": { + "title": "Fehler!", + "message": "Workflow konnte nicht gelöscht werden. Bitte versuchen Sie es erneut." + } + }, + "add_states": { + "success": { + "title": "Erfolg!", + "message": "Status erfolgreich hinzugefügt." + }, + "error": { + "title": "Fehler!", + "message": "Status konnten nicht hinzugefügt werden. Bitte versuchen Sie es erneut." } } }, + "work_item_types": { + "heading": "Arbeitselementtypen", + "description": "Erstellen und passen Sie verschiedene Typen von Arbeitselementen mit einzigartigen Eigenschaften an" + }, "features": { "cycles": { "title": "Zyklen", @@ -404,114 +430,6 @@ "error": "Beim Aktualisieren der Projektfunktion ist etwas schiefgelaufen. Bitte versuchen Sie es erneut." } }, - "workflows": { - "toggle": { - "title": "Workflows aktivieren", - "description": "Legen Sie Workflows fest, um die Bewegung von Arbeitselementen zu steuern", - "no_states_tooltip": "Keine Status wurden dem Workflow hinzugefügt.", - "toast": { - "loading": { - "enabling": "Workflows werden aktiviert", - "disabling": "Workflows werden deaktiviert" - }, - "success": { - "title": "Erfolg!", - "message": "Workflows erfolgreich aktiviert." - }, - "error": { - "title": "Fehler!", - "message": "Workflows konnten nicht aktiviert werden. Bitte versuchen Sie es erneut." - } - } - }, - "heading": "Workflows", - "description": "Automatisieren Sie Übergänge von Arbeitselementen und legen Sie Regeln fest, um zu steuern, wie Aufgaben durch Ihre Projektpipeline fließen.", - "add_button": "Neuen Workflow hinzufügen", - "search": "Workflows suchen", - "detail": { - "define": "Workflow definieren", - "add_states": "Status hinzufügen", - "unmapped_states": { - "title": "Nicht zugeordnete Status erkannt", - "description": "Einige Arbeitselemente der ausgewählten Typen befinden sich derzeit in Status, die in diesem Workflow nicht vorhanden sind.", - "note": "Wenn Sie diesen Workflow aktivieren, werden diese Elemente automatisch in den Anfangsstatus dieses Workflows verschoben.", - "label": "Fehlende Status", - "tooltip": "Einige Arbeitselemente befinden sich in Status, die diesem Workflow nicht zugeordnet sind. Öffnen Sie den Workflow zur Überprüfung." - } - }, - "select_states": { - "empty_state": { - "title": "Alle Status werden verwendet", - "description": "Alle für dieses Projekt definierten Status sind bereits in Ihrem aktuellen Workflow vorhanden." - } - }, - "default_footer": { - "fallback_message": "Dieser Workflow gilt für jeden Arbeitselementtyp, der keinem Workflow zugeordnet ist." - }, - "create": { - "heading": "Neuen Workflow erstellen", - "name": { - "placeholder": "Einen eindeutigen Namen hinzufügen", - "validation": { - "max_length": "Der Name darf nicht mehr als 255 Zeichen haben", - "required": "Name ist erforderlich", - "invalid": "Der Name darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Apostrophe enthalten" - } - }, - "description": { - "placeholder": "Eine kurze Beschreibung hinzufügen", - "validation": { - "invalid": "Die Beschreibung darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Apostrophe enthalten" - } - }, - "work_item_type": { - "label": "Arbeitselementtyp" - }, - "success": { - "title": "Erfolg!", - "message": "Workflow erfolgreich erstellt." - }, - "error": { - "title": "Fehler!", - "message": "Workflow konnte nicht erstellt werden. Bitte versuchen Sie es erneut." - } - }, - "update": { - "success": { - "title": "Erfolg!", - "message": "Workflow erfolgreich aktualisiert." - }, - "error": { - "title": "Fehler!", - "message": "Workflow konnte nicht aktualisiert werden. Bitte versuchen Sie es erneut." - } - }, - "delete": { - "loading": "Workflow wird gelöscht", - "success": { - "title": "Erfolg!", - "message": "Workflow erfolgreich gelöscht." - }, - "error": { - "title": "Fehler!", - "message": "Workflow konnte nicht gelöscht werden. Bitte versuchen Sie es erneut." - } - }, - "add_states": { - "success": { - "title": "Erfolg!", - "message": "Status erfolgreich hinzugefügt." - }, - "error": { - "title": "Fehler!", - "message": "Status konnten nicht hinzugefügt werden. Bitte versuchen Sie es erneut." - } - } - }, - "work_item_types": { - "heading": "Arbeitselementtypen", - "description": "Erstellen und passen Sie verschiedene Typen von Arbeitselementen mit einzigartigen Eigenschaften an" - }, "project_updates": { "heading": "Projektaktualisierungen", "description": "Konsolidierte Nachverfolgung und Fortschrittsüberwachung für dieses Projekt" @@ -519,6 +437,90 @@ "templates": { "heading": "Vorlagen", "description": "Sparen Sie 80% der Zeit beim Erstellen von Projekten, Arbeitselementen und Seiten, wenn Sie Vorlagen verwenden." + }, + "cycles": { + "auto_schedule": { + "heading": "Automatische Zyklusplanung", + "description": "Halten Sie Zyklen ohne manuelle Einrichtung in Bewegung.", + "tooltip": "Erstellen Sie automatisch neue Zyklen basierend auf Ihrem gewählten Zeitplan.", + "edit_button": "Bearbeiten", + "form": { + "cycle_title": { + "label": "Zyklustitel", + "placeholder": "Titel", + "tooltip": "Der Titel wird für nachfolgende Zyklen mit Nummern ergänzt. Zum Beispiel: Design - 1/2/3", + "validation": { + "required": "Zyklustitel ist erforderlich", + "max_length": "Der Titel darf 255 Zeichen nicht überschreiten" + } + }, + "cycle_duration": { + "label": "Zyklusdauer", + "unit": "Wochen", + "validation": { + "required": "Zyklusdauer ist erforderlich", + "min": "Die Zyklusdauer muss mindestens 1 Woche betragen", + "max": "Die Zyklusdauer darf 30 Wochen nicht überschreiten", + "positive": "Die Zyklusdauer muss positiv sein" + } + }, + "cooldown_period": { + "label": "Abkühlungsphase", + "unit": "Tage", + "tooltip": "Pause zwischen Zyklen, bevor der nächste beginnt.", + "validation": { + "required": "Abkühlungsphase ist erforderlich", + "negative": "Die Abkühlungsphase darf nicht negativ sein" + } + }, + "start_date": { + "label": "Zyklus-Starttag", + "validation": { + "required": "Startdatum ist erforderlich", + "past": "Das Startdatum darf nicht in der Vergangenheit liegen" + } + }, + "number_of_cycles": { + "label": "Anzahl zukünftiger Zyklen", + "validation": { + "required": "Anzahl der Zyklen ist erforderlich", + "min": "Mindestens 1 Zyklus ist erforderlich", + "max": "Es können nicht mehr als 3 Zyklen geplant werden" + } + }, + "auto_rollover": { + "label": "Automatische Übertragung von Arbeitselementen", + "tooltip": "Am Tag der Zyklusbeendigung werden alle unvollendeten Arbeitselemente in den nächsten Zyklus verschoben." + } + }, + "toast": { + "toggle": { + "loading_enable": "Automatische Zyklusplanung wird aktiviert", + "loading_disable": "Automatische Zyklusplanung wird deaktiviert", + "success": { + "title": "Erfolg!", + "message": "Automatische Zyklusplanung erfolgreich aktiviert." + }, + "error": { + "title": "Fehler!", + "message": "Aktivierung der automatischen Zyklusplanung fehlgeschlagen." + } + }, + "save": { + "loading": "Konfiguration der automatischen Zyklusplanung wird gespeichert", + "success": { + "title": "Erfolg!", + "message_create": "Konfiguration der automatischen Zyklusplanung erfolgreich gespeichert.", + "message_update": "Konfiguration der automatischen Zyklusplanung erfolgreich aktualisiert." + }, + "error": { + "title": "Fehler!", + "message_create": "Speichern der Konfiguration der automatischen Zyklusplanung fehlgeschlagen.", + "message_update": "Aktualisierung der Konfiguration der automatischen Zyklusplanung fehlgeschlagen." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/de/project.json b/packages/i18n/src/locales/de/project.json index b7f73e6d132..96623077f69 100644 --- a/packages/i18n/src/locales/de/project.json +++ b/packages/i18n/src/locales/de/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Speichern Sie Filter als Ansichten.", + "description": "Ansichten sind gespeicherte Filter, auf die Sie schnell zugreifen und die Sie im Team teilen können.", + "primary_button": { + "text": "Erste Ansicht erstellen", + "comic": { + "title": "Ansichten funktionieren mit den Eigenschaften der Arbeitselemente.", + "description": "Erstellen Sie eine Ansicht mit den gewünschten Filtern." + } + }, + "filter": { + "title": "Keine passenden Ansichten", + "description": "Keine Ansichten entsprechen den Suchkriterien.\n Erstellen Sie stattdessen eine neue Ansicht." + } + }, + "no_archived_issues": { + "title": "Noch keine archivierten Arbeitselemente", + "description": "Manuell oder durch Automatisierung können Sie abgeschlossene oder abgebrochene Arbeitselemente archivieren. Finden Sie sie hier, sobald sie archiviert sind.", + "primary_button": { + "text": "Automatisierung einrichten" + } + }, + "issues_empty_filter": { + "title": "Keine Arbeitselemente gefunden, die den angewendeten Filtern entsprechen", + "secondary_button": { + "text": "Alle Filter löschen" + } + }, + "public": { + "title": "Noch keine öffentlichen Seiten", + "description": "Sehen Sie hier Seiten, die mit allen in Ihrem Projekt geteilt wurden.", + "primary_button": { + "text": "Ihre erste Seite erstellen" + } + }, + "archived": { + "title": "Noch keine archivierten Seiten", + "description": "Archivieren Sie Seiten, die nicht auf Ihrem Radar sind. Greifen Sie hier bei Bedarf darauf zu." + }, + "shared": { + "title": "Noch keine geteilten Seiten", + "description": "Seiten, die andere mit Ihnen geteilt haben, werden hier angezeigt." + } + }, + "delete_view": { + "title": "Sind Sie sicher, dass Sie diese Ansicht löschen möchten?", + "content": "Wenn Sie bestätigen, werden alle Sortier-, Filter- und Anzeigeoptionen + das Layout, das Sie für diese Ansicht gewählt haben, dauerhaft gelöscht und können nicht wiederhergestellt werden." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,64 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Speichern Sie Filter als Ansichten.", - "description": "Ansichten sind gespeicherte Filter, auf die Sie schnell zugreifen und die Sie im Team teilen können.", - "primary_button": { - "text": "Erste Ansicht erstellen", - "comic": { - "title": "Ansichten funktionieren mit den Eigenschaften der Arbeitselemente.", - "description": "Erstellen Sie eine Ansicht mit den gewünschten Filtern." - } - }, - "filter": { - "title": "Keine passenden Ansichten", - "description": "Keine Ansichten entsprechen den Suchkriterien.\n Erstellen Sie stattdessen eine neue Ansicht." - } - }, - "no_archived_issues": { - "title": "Noch keine archivierten Arbeitselemente", - "description": "Manuell oder durch Automatisierung können Sie abgeschlossene oder abgebrochene Arbeitselemente archivieren. Finden Sie sie hier, sobald sie archiviert sind.", - "primary_button": { - "text": "Automatisierung einrichten" - } - }, - "issues_empty_filter": { - "title": "Keine Arbeitselemente gefunden, die den angewendeten Filtern entsprechen", - "secondary_button": { - "text": "Alle Filter löschen" - } - }, - "public": { - "title": "Noch keine öffentlichen Seiten", - "description": "Sehen Sie hier Seiten, die mit allen in Ihrem Projekt geteilt wurden.", - "primary_button": { - "text": "Ihre erste Seite erstellen" - } - }, - "archived": { - "title": "Noch keine archivierten Seiten", - "description": "Archivieren Sie Seiten, die nicht auf Ihrem Radar sind. Greifen Sie hier bei Bedarf darauf zu." - }, - "shared": { - "title": "Noch keine geteilten Seiten", - "description": "Seiten, die andere mit Ihnen geteilt haben, werden hier angezeigt." - } - }, - "delete_view": { - "title": "Sind Sie sicher, dass Sie diese Ansicht löschen möchten?", - "content": "Wenn Sie bestätigen, werden alle Sortier-, Filter- und Anzeigeoptionen + das Layout, das Sie für diese Ansicht gewählt haben, dauerhaft gelöscht und können nicht wiederhergestellt werden." - } - }, - "project_members": { - "full_name": "Vollständiger Name", - "display_name": "Anzeigename", - "email": "E-Mail", - "joining_date": "Beitrittsdatum", - "role": "Rolle" - }, "project_page": { "empty_state": { "general": { @@ -366,6 +359,13 @@ "manual": "Manuell" } }, + "project_members": { + "full_name": "Vollständiger Name", + "display_name": "Anzeigename", + "email": "E-Mail", + "joining_date": "Beitrittsdatum", + "role": "Rolle" + }, "project": { "members_import": { "title": "Mitglieder aus CSV importieren", diff --git a/packages/i18n/src/locales/de/settings.json b/packages/i18n/src/locales/de/settings.json index dd70b372789..511c63264a4 100644 --- a/packages/i18n/src/locales/de/settings.json +++ b/packages/i18n/src/locales/de/settings.json @@ -39,6 +39,10 @@ } } }, + "preferences": { + "heading": "Einstellungen", + "description": "Passen Sie Ihre App-Erfahrung an Ihre Arbeitsweise an" + }, "notifications": { "heading": "E-Mail-Benachrichtigungen", "description": "Bleiben Sie bei Arbeitselementen auf dem Laufenden, die Sie abonniert haben. Aktivieren Sie dies, um benachrichtigt zu werden.", @@ -46,10 +50,6 @@ "compact": "Kompakt", "full": "Vollbild" }, - "preferences": { - "heading": "Einstellungen", - "description": "Passen Sie Ihre App-Erfahrung an Ihre Arbeitsweise an" - }, "security": { "heading": "Sicherheit" }, @@ -101,8 +101,8 @@ "security": "Sicherheit", "activity": "Aktivität", "preferences": "Einstellungen", - "api-tokens": "Persönliche Zugriffstoken", "notifications": "Benachrichtigungen", + "api-tokens": "Persönliche Zugriffstoken", "connections": "Verbindungen" }, "tabs": { diff --git a/packages/i18n/src/locales/de/template.json b/packages/i18n/src/locales/de/template.json index 21334d2d8a6..d97f8524a11 100644 --- a/packages/i18n/src/locales/de/template.json +++ b/packages/i18n/src/locales/de/template.json @@ -2,10 +2,10 @@ "templates": { "settings": { "title": "Vorlagen", + "description": "Sparen Sie 80% der Zeit, die für die Erstellung von Projekten, Arbeitsaufgaben und Seiten aufgewendet wird, wenn Sie Vorlagen verwenden.", "new_project_template": "Neue Projektvorlage", "new_work_item_template": "Neue Arbeitselementvorlage", "new_page_template": "Neue Seitenvorlage", - "description": "Sparen Sie 80% der Zeit, die für die Erstellung von Projekten, Arbeitsaufgaben und Seiten aufgewendet wird, wenn Sie Vorlagen verwenden.", "options": { "project": { "label": "Projektvorlagen" @@ -160,14 +160,6 @@ "required": "Mindestens ein Schlüsselwort ist erforderlich" } }, - "company_name": { - "label": "Unternehmensname", - "placeholder": "Plane", - "validation": { - "required": "Unternehmensname ist erforderlich", - "maxLength": "Unternehmensname sollte weniger als 255 Zeichen enthalten" - } - }, "website": { "label": "Website-URL", "placeholder": "https://plane.so", @@ -176,6 +168,14 @@ "maxLength": "URL sollte weniger als 800 Zeichen enthalten" } }, + "company_name": { + "label": "Unternehmensname", + "placeholder": "Plane", + "validation": { + "required": "Unternehmensname ist erforderlich", + "maxLength": "Unternehmensname sollte weniger als 255 Zeichen enthalten" + } + }, "contact_email": { "label": "Support-E-Mail", "placeholder": "help@plane.so", @@ -236,6 +236,9 @@ "no_labels": { "description": "Noch keine Labels vorhanden. Erstellen Sie Labels, um Arbeitsaufgaben in Ihrem Projekt zu organisieren und zu filtern." }, + "no_modules": { + "description": "Noch keine Module. Organisieren Sie Arbeit in Unterprojekte mit dedizierten Verantwortlichen und Bearbeitern." + }, "no_work_items": { "description": "Noch keine Arbeitsaufgaben. Fügen Sie eine hinzu, um Ihre Arbeit besser zu strukturieren." }, diff --git a/packages/i18n/src/locales/de/tour.json b/packages/i18n/src/locales/de/tour.json index 22e89cd04e5..4c3586a3b47 100644 --- a/packages/i18n/src/locales/de/tour.json +++ b/packages/i18n/src/locales/de/tour.json @@ -110,6 +110,12 @@ "description": "Ein Arbeitselement kann zurückgestellt werden, um es zu einem späteren Zeitpunkt zu überprüfen. Es wird an das Ende Ihrer offenen Anfragenliste verschoben." } }, + "mcp_connectors": { + "step_zero": { + "title": "Schluss mit dem Wechseln zwischen Tabs. Verbinden Sie Ihre Welt.", + "description": "Verknüpfen Sie GitHub und Slack, um PRs zu verfolgen und Chats direkt in Plane AI zusammenzufassen." + } + }, "navigation": { "modal": { "title": "Navigation, neu gedacht", diff --git a/packages/i18n/src/locales/de/update.json b/packages/i18n/src/locales/de/update.json index e1817dd15fe..30b5e9ef231 100644 --- a/packages/i18n/src/locales/de/update.json +++ b/packages/i18n/src/locales/de/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "Fortschritt", + "since_last_update": "Seit der letzten Aktualisierung", + "comments": "{count, plural, one{# Kommentar} few{# Kommentare} other{# Kommentare}}" + }, "add_update": "Aktualisieren", "add_update_placeholder": "Schreiben Sie Ihre Aktualisierung hier", "empty": { "title": "Noch keine Aktualisierungen", "description": "Sie können hier Aktualisierungen sehen." }, - "delete": { - "title": "Aktualisierung löschen", - "confirmation": "Sie sind dabei, diese Aktualisierung zu löschen. Diese Aktion ist unumkehrbar.", - "success": { - "title": "Aktualisierung gelöscht", - "message": "Die Aktualisierung wurde erfolgreich gelöscht" - }, - "error": { - "title": "Aktualisierung nicht gelöscht", - "message": "Die Aktualisierung konnte nicht gelöscht werden" - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "Fortschritt", - "since_last_update": "Seit der letzten Aktualisierung", - "comments": "{count, plural, one{# Kommentar} few{# Kommentare} other{# Kommentare}}" - }, "create": { "success": { "title": "Aktualisierung erstellt", @@ -55,6 +43,18 @@ "message": "Aktualisierung konnte nicht erstellt werden" } }, + "delete": { + "title": "Aktualisierung löschen", + "confirmation": "Sie sind dabei, diese Aktualisierung zu löschen. Diese Aktion ist unumkehrbar.", + "success": { + "title": "Aktualisierung gelöscht", + "message": "Die Aktualisierung wurde erfolgreich gelöscht" + }, + "error": { + "title": "Aktualisierung nicht gelöscht", + "message": "Die Aktualisierung konnte nicht gelöscht werden" + } + }, "update": { "success": { "title": "Aktualisierung aktualisiert", diff --git a/packages/i18n/src/locales/de/work-item-type.json b/packages/i18n/src/locales/de/work-item-type.json index 64b10cb7ed0..859e5975f9b 100644 --- a/packages/i18n/src/locales/de/work-item-type.json +++ b/packages/i18n/src/locales/de/work-item-type.json @@ -4,16 +4,24 @@ "label_lowercase": "arbeitsaufgabentypen", "settings": { "description": "Passen Sie eigene Eigenschaften an und fügen Sie sie hinzu, um sie an die Bedürfnisse Ihres Teams anzupassen.", + "cant_delete_default_message": "Dieser Arbeitselementtyp kann nicht gelöscht werden, da er als Standard für dieses Projekt festgelegt ist.", + "set_as_default": "Als Standard festlegen", + "cant_set_default_inactive_message": "Aktivieren Sie diesen Typ, bevor Sie ihn als Standard festlegen", + "set_default_confirmation": { + "title": "Als Standard-Arbeitselementtyp festlegen", + "description": "Wenn Sie {name} als Standard festlegen, wird er in alle Projekte in diesem Arbeitsbereich importiert. Alle neuen Arbeitselemente verwenden dann standardmäßig diesen Typ.", + "confirm_button": "Als Standard festlegen" + }, "properties": { "title": "Benutzerdefinierte Eigenschaften", "description": "Erstellen und passen Sie Eigenschaften an.", + "tooltip": "Jeder Arbeitsaufgabentyp wird mit einem Standardsatz von Eigenschaften wie Titel, Beschreibung, Bearbeiter, Status, Priorität, Startdatum, Fälligkeitsdatum, Modul, Zyklus usw. geliefert. Sie können auch Ihre eigenen Eigenschaften anpassen und hinzufügen, um sie an die Bedürfnisse Ihres Teams anzupassen.", + "add_button": "Neue Eigenschaft hinzufügen", "project": { "add_button": { "import_from_workspace": "Aus Arbeitsbereich importieren" } }, - "tooltip": "Jeder Arbeitsaufgabentyp wird mit einem Standardsatz von Eigenschaften wie Titel, Beschreibung, Bearbeiter, Status, Priorität, Startdatum, Fälligkeitsdatum, Modul, Zyklus usw. geliefert. Sie können auch Ihre eigenen Eigenschaften anpassen und hinzufügen, um sie an die Bedürfnisse Ihres Teams anzupassen.", - "add_button": "Neue Eigenschaft hinzufügen", "dropdown": { "label": "Eigenschaftstyp", "placeholder": "Typ auswählen" @@ -223,34 +231,6 @@ "description": "Neue Eigenschaften, die Sie für diesen Arbeitsaufgabentyp hinzufügen, werden hier angezeigt." } }, - "item_delete_confirmation": { - "title": "Diesen Typ löschen", - "description": "Das Löschen von Typen kann zum Verlust vorhandener Daten führen.", - "primary_button": "Ja, löschen", - "toast": { - "success": { - "title": "Erfolg!", - "message": "Arbeitselementtyp wurde erfolgreich gelöscht." - }, - "error": { - "title": "Fehler!", - "message": "Löschen des Arbeitselementtyps fehlgeschlagen. Bitte versuchen Sie es erneut!" - } - }, - "errors": { - "cannot_delete_default_work_item_type": "Der Standard-Arbeitselementtyp kann nicht gelöscht werden", - "cannot_delete_work_item_type_with_associated_work_items": "Arbeitselementtyp mit zugeordneten Arbeitselementen kann nicht gelöscht werden" - }, - "can_disable_warning": "Möchten Sie stattdessen den Typ deaktivieren?" - }, - "cant_delete_default_message": "Dieser Arbeitselementtyp kann nicht gelöscht werden, da er als Standard für dieses Projekt festgelegt ist.", - "set_as_default": "Als Standard festlegen", - "cant_set_default_inactive_message": "Aktivieren Sie diesen Typ, bevor Sie ihn als Standard festlegen", - "set_default_confirmation": { - "title": "Als Standard-Arbeitselementtyp festlegen", - "description": "Wenn Sie {name} als Standard festlegen, wird er in alle Projekte in diesem Arbeitsbereich importiert. Alle neuen Arbeitselemente verwenden dann standardmäßig diesen Typ.", - "confirm_button": "Als Standard festlegen" - }, "types": { "title": "Typen", "description": "Erstellen und passen Sie Arbeitselementtypen mit Eigenschaften an.", @@ -265,6 +245,10 @@ "add_button": { "create_new": "Neu erstellen", "import_from_workspace": "Aus Arbeitsbereich importieren" + }, + "banner": { + "with_access": "Aktivieren Sie Arbeitsaufgabentypen, um Typen von der Arbeitsbereichsebene zu importieren", + "without_access": "Arbeitsaufgabentypen sind deaktiviert. Wenden Sie sich an den Arbeitsbereichs-Administrator, um sie in den Arbeitsbereichseinstellungen zu aktivieren." } } }, @@ -286,6 +270,26 @@ "confirm": "Eigenschaft trennen", "loading": "Wird getrennt" } + }, + "item_delete_confirmation": { + "title": "Diesen Typ löschen", + "description": "Das Löschen von Typen kann zum Verlust vorhandener Daten führen.", + "can_disable_warning": "Möchten Sie stattdessen den Typ deaktivieren?", + "primary_button": "Ja, löschen", + "toast": { + "success": { + "title": "Erfolg!", + "message": "Arbeitselementtyp wurde erfolgreich gelöscht." + }, + "error": { + "title": "Fehler!", + "message": "Löschen des Arbeitselementtyps fehlgeschlagen. Bitte versuchen Sie es erneut!" + } + }, + "errors": { + "cannot_delete_default_work_item_type": "Der Standard-Arbeitselementtyp kann nicht gelöscht werden", + "cannot_delete_work_item_type_with_associated_work_items": "Arbeitselementtyp mit zugeordneten Arbeitselementen kann nicht gelöscht werden" + } } }, "create": { @@ -431,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Validierungsfehler!", + "title": "Speichern trennt bestehende Verknüpfungen", "content": { "intro": "Der Arbeitselement-Typ „{workItemTypeName}“ umfasst:", - "parent_items": "{count, plural, one {übergeordnetes Arbeitselement} other {übergeordnete Arbeitselemente}}", + "parent_items": "{count, plural, one {# übergeordnete Verknüpfung wird} other {# übergeordnete Verknüpfungen werden}} entfernt.", "child_items": "{count, plural, one {Unterarbeitselement} other {Unterarbeitselemente}}", "parent_line_suffix_when_also_children": ", und ", "footer": "Diese Änderung entfernt übergeordnete und untergeordnete Beziehungen bei vorhandenen Arbeitselementen des Typs {workItemTypeName}." }, "confirm_input": { - "label": "Geben Sie „Bestätigen“ ein, um fortzufahren.", - "placeholder": "Bestätigen" + "label": "Geben Sie „bestätigen“ ein, um fortzufahren.", + "placeholder": "bestätigen" }, "error_toast": { "title": "Fehler!", - "message": "Hierarchie konnte nicht aufgebrochen werden. Bitte versuchen Sie es erneut." + "message": "Verknüpfungen konnten nicht aufgehoben und gespeichert werden. Bitte versuchen Sie es erneut." }, "confirm_button": { - "loading": "Wird angewendet", - "default": "Anwenden & Verknüpfung aufheben" + "loading": "Speichern", + "default": "Trotzdem speichern" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/de/work-item.json b/packages/i18n/src/locales/de/work-item.json index 640a90f1504..9c235f60554 100644 --- a/packages/i18n/src/locales/de/work-item.json +++ b/packages/i18n/src/locales/de/work-item.json @@ -20,10 +20,10 @@ "due_date": "Fälligkeitsdatum hinzufügen", "parent": "Übergeordnetes Arbeitselement hinzufügen", "sub_issue": "Untergeordnetes Arbeitselement hinzufügen", + "dependency": "Abhängigkeit hinzufügen", "relation": "Beziehung hinzufügen", "link": "Link hinzufügen", - "existing": "Vorhandenes Arbeitselement hinzufügen", - "dependency": "Abhängigkeit hinzufügen" + "existing": "Vorhandenes Arbeitselement hinzufügen" }, "remove": { "label": "Arbeitselement entfernen", diff --git a/packages/i18n/src/locales/de/workspace-settings.json b/packages/i18n/src/locales/de/workspace-settings.json index b79de5b15f6..21269026fba 100644 --- a/packages/i18n/src/locales/de/workspace-settings.json +++ b/packages/i18n/src/locales/de/workspace-settings.json @@ -76,12 +76,12 @@ "exports": { "heading": "Exporte", "description": "Exportieren Sie Ihre Projektdaten in verschiedenen Formaten und greifen Sie auf Ihre Exporthistorie mit Download-Links zu.", - "exporting_projects": "Projekt wird exportiert", - "format": "Format", "title": "Exporte", "exporting": "Wird exportiert", "previous_exports": "Bisherige Exporte", "export_separate_files": "Daten in separaten Dateien exportieren", + "exporting_projects": "Projekt wird exportiert", + "format": "Format", "filters_info": "Wenden Sie Filter an, um bestimmte Arbeitselemente basierend auf Ihren Kriterien zu exportieren.", "modal": { "title": "Exportieren nach", @@ -173,21 +173,21 @@ } }, "integrations": { + "title": "Integrationen", "heading": "Integrationen", "description": "Verbinden Sie sich mit beliebten Tools und Diensten, um Ihre Arbeit über Ihr gesamtes Workflow-Ökosystem zu synchronisieren.", - "title": "Integrationen", "page_title": "Arbeiten Sie mit Ihren Plane-Daten in verfügbaren Apps oder in Ihren eigenen.", "page_description": "Sehen Sie sich alle Integrationen an, die von diesem Workspace oder von Ihnen verwendet werden." }, "imports": { + "title": "Importe", "heading": "Importe", - "description": "Verbinden und importieren Sie Daten aus Ihren bestehenden Projektmanagement-Tools, um Ihre Workflow-Integration zu optimieren.", - "title": "Importe" + "description": "Verbinden und importieren Sie Daten aus Ihren bestehenden Projektmanagement-Tools, um Ihre Workflow-Integration zu optimieren." }, "worklogs": { + "title": "Arbeitsberichte", "heading": "Arbeitsberichte", - "description": "Laden Sie Arbeitsberichte (Zeiterfassungen) für jeden in jedem Projekt herunter.", - "title": "Arbeitsberichte" + "description": "Laden Sie Arbeitsberichte (Zeiterfassungen) für jeden in jedem Projekt herunter." }, "group_syncing": { "title": "Gruppensynchronisation", @@ -256,9 +256,10 @@ "description": "Konfigurieren Sie Ihre Domain und aktivieren Sie Single Sign-On" }, "project_states": { + "title": "Projektstatus", "heading": "Fortschrittsübersicht für alle Projekte anzeigen.", "description": "Projektstatus ist eine Plane-exklusive Funktion zur Verfolgung des Fortschritts aller Ihrer Projekte nach beliebiger Projekteigenschaft.", - "title": "Projektstatus" + "go_to_settings": "Zu den Einstellungen" }, "projects": { "title": "Projekte", @@ -278,17 +279,6 @@ "heading": "Beziehungen", "description": "Erstellen und verwalten Sie Beziehungstypen, die Arbeitselemente in Ihrem Arbeitsbereich verbinden." }, - "plane-intelligence": { - "title": "Plane AI", - "heading": "Plane AI", - "description": "Lassen Sie Ihre Arbeit intelligenter und schneller werden mit KI, die nativ mit Ihrer Arbeit und Wissensbasis verbunden ist." - }, - "runners": { - "title": "Plane Runner", - "heading": "Skripte", - "new_script": "Neues Skript", - "description": "Automatisieren Sie Ihre Workflows mit benutzerdefinierten Skripten und Automatisierungsregeln." - }, "cancel_trial": { "title": "Kündigen Sie zuerst Ihre Testphase.", "description": "Sie haben eine aktive Testphase für einen unserer kostenpflichtigen Pläne. Bitte kündigen Sie diese zuerst, um fortzufahren.", @@ -300,17 +290,8 @@ "cancel_error_message": "Bitte versuchen Sie es erneut." }, "applications": { + "internal": "Intern", "title": "Anwendungen", - "webhook_secret": { - "label": "Webhook-Secret", - "description": "Secret zur Überprüfung eingehender Webhook-Anfragen.", - "placeholder": "Geben Sie einen zufälligen geheimen Schlüssel ein" - }, - "invalid_website_error": "Ungültige Website", - "app_consent_no_access_title": "Installationsanfrage", - "app_consent_unapproved_title": "Diese App wurde noch nicht von Plane überprüft oder genehmigt.", - "app_consent_unapproved_description": "Stellen Sie sicher, dass Sie dieser App vertrauen, bevor Sie sie mit Ihrem Arbeitsbereich verbinden.", - "go_to_app": "Zur App", "applicationId_copied": "Anwendungs-ID in die Zwischenablage kopiert", "clientId_copied": "Client-ID in die Zwischenablage kopiert", "clientSecret_copied": "Client-Secret in die Zwischenablage kopiert", @@ -318,10 +299,61 @@ "your_apps": "Ihre Apps", "connect": "Verbinden", "connected": "Verbunden", + "disconnect": "Trennen", "install": "Installieren", "installed": "Installiert", "configure": "Konfigurieren", "app_available": "Sie haben diese App für die Verwendung mit einem Plane-Workspace verfügbar gemacht", + "app_credentials_regenrated": { + "title": "App-Anmeldedaten wurden erfolgreich neu generiert", + "description": "Ersetzen Sie das Client-Secret überall, wo es verwendet wird. Das vorherige Secret ist nicht mehr gültig." + }, + "app_created": { + "title": "App wurde erfolgreich erstellt", + "description": "Verwenden Sie die Anmeldedaten, um die App in einem Plane-Arbeitsbereich zu installieren" + }, + "installed_apps": "Installierte Apps", + "all_apps": "Alle Apps", + "internal_apps": "Interne Apps", + "app_name_title": "Wie möchten Sie diese App nennen", + "app_description_title": { + "label": "Lange Beschreibung", + "placeholder": "Schreiben Sie eine lange Beschreibung für den Marktplatz. Drücken Sie '/' für Befehle." + }, + "authorization_grant_type": { + "title": "Verbindungstyp", + "description": "Wählen Sie, ob Ihre App einmal für den Arbeitsbereich installiert werden soll oder ob jeder Benutzer sein eigenes Konto verbinden soll" + }, + "website": { + "title": "Webseite", + "description": "Link zur Website Ihrer App.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "App-Entwickler", + "description": "Die Person oder Organisation, die die App erstellt." + }, + "app_maker_error": "App-Entwickler ist erforderlich", + "setup_url": { + "label": "Setup-URL", + "description": "Benutzer werden zu dieser URL weitergeleitet, wenn sie die App installieren.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook-URL", + "description": "Hier werden wir Webhook-Ereignisse und Updates von den Arbeitsbereichen senden, in denen Ihre App installiert ist.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhook-Secret", + "description": "Secret zur Überprüfung eingehender Webhook-Anfragen.", + "placeholder": "Geben Sie einen zufälligen geheimen Schlüssel ein" + }, + "redirect_uris": { + "label": "Redirect-URIs (durch Leerzeichen getrennt)", + "description": "Benutzer werden nach der Authentifizierung mit Plane auf diesen Pfad weitergeleitet.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Verbinden Sie einen Plane-Workspace, um die Nutzung zu beginnen", "client_id_and_secret": "Client-ID und Secret", "client_id_and_secret_description": "Kopieren und speichern Sie diesen geheimen Schlüssel. Sie können diesen Schlüssel nach dem Schließen nicht mehr sehen.", @@ -333,22 +365,13 @@ "slug_already_exists": "Slug existiert bereits", "failed_to_create_application": "Erstellen der Anwendung fehlgeschlagen", "upload_logo": "Logo hochladen", - "app_name_title": "Wie möchten Sie diese App nennen", "app_name_error": "App-Name ist erforderlich", "app_short_description_title": "Geben Sie dieser App eine kurze Beschreibung", "app_short_description_error": "Kurze App-Beschreibung ist erforderlich", - "app_description_title": { - "label": "Lange Beschreibung", - "placeholder": "Schreiben Sie eine lange Beschreibung für den Marktplatz. Drücken Sie '/' für Befehle." - }, - "authorization_grant_type": { - "title": "Verbindungstyp", - "description": "Wählen Sie, ob Ihre App einmal für den Arbeitsbereich installiert werden soll oder ob jeder Benutzer sein eigenes Konto verbinden soll" - }, "app_description_error": "App-Beschreibung ist erforderlich", "app_slug_title": "App-Slug", "app_slug_error": "App-Slug ist erforderlich", - "app_maker_error": "App-Entwickler ist erforderlich", + "invalid_website_error": "Ungültige Website", "webhook_url_title": "Webhook-URL", "webhook_url_error": "Webhook-URL ist erforderlich", "invalid_webhook_url_error": "Ungültige Webhook-URL", @@ -425,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Ungültige Datei oder überschreitet die Größe ({size} MB)", "uploading": "Hochladen...", "upload_and_save": "Hochladen und speichern", - "app_credentials_regenrated": { - "title": "App-Anmeldedaten wurden erfolgreich neu generiert", - "description": "Ersetzen Sie das Client-Secret überall, wo es verwendet wird. Das vorherige Secret ist nicht mehr gültig." - }, - "app_created": { - "title": "App wurde erfolgreich erstellt", - "description": "Verwenden Sie die Anmeldedaten, um die App in einem Plane-Arbeitsbereich zu installieren" - }, - "installed_apps": "Installierte Apps", - "all_apps": "Alle Apps", - "internal_apps": "Interne Apps", - "website": { - "title": "Webseite", - "description": "Link zur Website Ihrer App.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "App-Entwickler", - "description": "Die Person oder Organisation, die die App erstellt." - }, - "setup_url": { - "label": "Setup-URL", - "description": "Benutzer werden zu dieser URL weitergeleitet, wenn sie die App installieren.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook-URL", - "description": "Hier werden wir Webhook-Ereignisse und Updates von den Arbeitsbereichen senden, in denen Ihre App installiert ist.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "Redirect-URIs (durch Leerzeichen getrennt)", - "description": "Benutzer werden nach der Authentifizierung mit Plane auf diesen Pfad weitergeleitet.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Installationsanfrage", "app_consent_no_access_description": "Diese App kann nur installiert werden, nachdem ein Workspace-Administrator sie installiert hat. Wenden Sie sich an Ihren Workspace-Administrator, um fortzufahren.", + "app_consent_unapproved_title": "Diese App wurde noch nicht von Plane überprüft oder genehmigt.", + "app_consent_unapproved_description": "Stellen Sie sicher, dass Sie dieser App vertrauen, bevor Sie sie mit Ihrem Arbeitsbereich verbinden.", + "go_to_app": "Zur App", "enable_app_mentions": "App-Erwähnungen aktivieren", "enable_app_mentions_tooltip": "Wenn dies aktiviert ist, können Benutzer Arbeitsaufgaben an diese Anwendung erwähnen oder zuweisen.", "scopes": "Bereiche", @@ -480,8 +472,18 @@ "profile": "Zugriff auf Benutzerprofilinformationen", "agents": "Zugriff auf Agenten und alle agentenbezogenen Entitäten", "assets": "Zugriff auf Assets und alle asset-bezogenen Entitäten" - }, - "internal": "Intern" + } + }, + "plane-intelligence": { + "title": "Plane AI", + "heading": "Plane AI", + "description": "Lassen Sie Ihre Arbeit intelligenter und schneller werden mit KI, die nativ mit Ihrer Arbeit und Wissensbasis verbunden ist." + }, + "runners": { + "title": "Plane Runner", + "heading": "Skripte", + "new_script": "Neues Skript", + "description": "Automatisieren Sie Ihre Workflows mit benutzerdefinierten Skripten und Automatisierungsregeln." } }, "empty_state": { diff --git a/packages/i18n/src/locales/de/workspace.json b/packages/i18n/src/locales/de/workspace.json index 82e522ccfee..46408ba8bdb 100644 --- a/packages/i18n/src/locales/de/workspace.json +++ b/packages/i18n/src/locales/de/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Umfang und Nachfrage", "custom": "Benutzerdefinierte Analysen" }, + "total": "Gesamte {entity}", + "started_work_items": "Begonnene {entity}", + "backlog_work_items": "Backlog-{entity}", + "un_started_work_items": "Nicht begonnene {entity}", + "completed_work_items": "Abgeschlossene {entity}", + "project_insights": "Projekteinblicke", + "summary_of_projects": "Projektübersicht", + "all_projects": "Alle Projekte", + "trend_on_charts": "Trend in Diagrammen", + "active_projects": "Aktive Projekte", + "customized_insights": "Individuelle Einblicke", + "created_vs_resolved": "Erstellt vs Gelöst", "empty_state": { - "customized_insights": { - "description": "Ihnen zugewiesene Arbeitselemente, aufgeschlüsselt nach Status, werden hier angezeigt.", - "title": "Noch keine Daten" + "project_insights": { + "title": "Noch keine Daten", + "description": "Ihnen zugewiesene Arbeitselemente, aufgeschlüsselt nach Status, werden hier angezeigt." }, "created_vs_resolved": { - "description": "Im Laufe der Zeit erstellte und gelöste Arbeitselemente werden hier angezeigt.", - "title": "Noch keine Daten" + "title": "Noch keine Daten", + "description": "Im Laufe der Zeit erstellte und gelöste Arbeitselemente werden hier angezeigt." }, - "project_insights": { + "customized_insights": { "title": "Noch keine Daten", "description": "Ihnen zugewiesene Arbeitselemente, aufgeschlüsselt nach Status, werden hier angezeigt." }, @@ -132,23 +144,11 @@ "description": "Analyse der Intake-Trends wird hier angezeigt. Fügen Sie Arbeitsaufgaben zum Intake hinzu, um Trends zu verfolgen." } }, - "created_vs_resolved": "Erstellt vs Gelöst", - "customized_insights": "Individuelle Einblicke", - "backlog_work_items": "Backlog-{entity}", - "active_projects": "Aktive Projekte", - "trend_on_charts": "Trend in Diagrammen", - "all_projects": "Alle Projekte", - "summary_of_projects": "Projektübersicht", - "project_insights": "Projekteinblicke", - "started_work_items": "Begonnene {entity}", - "un_started_work_items": "Nicht begonnene {entity}", - "completed_work_items": "Abgeschlossene {entity}", - "total": "Gesamte {entity}", + "upgrade_to_plan": "Upgrade auf {plan}, um {tab} freizuschalten", + "workitem_resolved_vs_pending": "Gelöste vs. ausstehende Arbeitsaufgaben", "projects_by_status": "Projekte nach Status", "active_users": "Aktive Nutzer", - "intake_trends": "Aufnahmetrends", - "workitem_resolved_vs_pending": "Gelöste vs. ausstehende Arbeitsaufgaben", - "upgrade_to_plan": "Upgrade auf {plan}, um {tab} freizuschalten" + "intake_trends": "Aufnahmetrends" }, "workspace_projects": { "label": "{count, plural, one {Projekt} few {Projekte} other {Projekte}}", diff --git a/packages/i18n/src/locales/es/auth.json b/packages/i18n/src/locales/es/auth.json index bc05d9ed6e7..b8e0353df89 100644 --- a/packages/i18n/src/locales/es/auth.json +++ b/packages/i18n/src/locales/es/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Correo electrónico", - "placeholder": "nombre@empresa.com", - "errors": { - "required": "El correo electrónico es obligatorio", - "invalid": "El correo electrónico no es válido" - } - }, - "password": { - "label": "Contraseña", - "set_password": "Establecer una contraseña", - "placeholder": "Ingresa la contraseña", - "confirm_password": { - "label": "Confirmar contraseña", - "placeholder": "Confirmar contraseña" - }, - "current_password": { - "label": "Contraseña actual" - }, - "new_password": { - "label": "Nueva contraseña", - "placeholder": "Ingresa nueva contraseña" - }, - "change_password": { - "label": { - "default": "Cambiar contraseña", - "submitting": "Cambiando contraseña" - } - }, - "errors": { - "match": "Las contraseñas no coinciden", - "empty": "Por favor ingresa tu contraseña", - "length": "La contraseña debe tener más de 8 caracteres", - "strength": { - "weak": "La contraseña es débil", - "strong": "La contraseña es fuerte" - } - }, - "submit": "Establecer contraseña", - "toast": { - "change_password": { - "success": { - "title": "¡Éxito!", - "message": "Contraseña cambiada exitosamente." - }, - "error": { - "title": "¡Error!", - "message": "Algo salió mal. Por favor intenta de nuevo." - } - } - } - }, - "unique_code": { - "label": "Código único", - "placeholder": "obtiene-establece-vuela", - "paste_code": "Pega el código enviado a tu correo electrónico", - "requesting_new_code": "Solicitando nuevo código", - "sending_code": "Enviando código" - }, - "already_have_an_account": "¿Ya tienes una cuenta?", - "login": "Iniciar sesión", - "create_account": "Crear una cuenta", - "new_to_plane": "¿Nuevo en Plane?", - "back_to_sign_in": "Volver a iniciar sesión", - "resend_in": "Reenviar en {seconds} segundos", - "sign_in_with_unique_code": "Iniciar sesión con código único", - "forgot_password": "¿Olvidaste tu contraseña?", - "username": { - "label": "Nombre de usuario", - "placeholder": "Ingrese su nombre de usuario" - } - }, - "sign_up": { - "header": { - "label": "Crea una cuenta para comenzar a gestionar el trabajo con tu equipo.", - "step": { - "email": { - "header": "Registrarse", - "sub_header": "" - }, - "password": { - "header": "Registrarse", - "sub_header": "Regístrate usando una combinación de correo electrónico y contraseña." - }, - "unique_code": { - "header": "Registrarse", - "sub_header": "Regístrate usando un código único enviado a la dirección de correo electrónico anterior." - } - } - }, - "errors": { - "password": { - "strength": "Intenta establecer una contraseña fuerte para continuar" - } - } - }, - "sign_in": { - "header": { - "label": "Inicia sesión para comenzar a gestionar el trabajo con tu equipo.", - "step": { - "email": { - "header": "Iniciar sesión o registrarse", - "sub_header": "" - }, - "password": { - "header": "Iniciar sesión o registrarse", - "sub_header": "Usa tu combinación de correo electrónico y contraseña para iniciar sesión." - }, - "unique_code": { - "header": "Iniciar sesión o registrarse", - "sub_header": "Inicia sesión usando un código único enviado a la dirección de correo electrónico anterior." - } - } - } - }, - "forgot_password": { - "title": "Restablecer tu contraseña", - "description": "Ingresa la dirección de correo electrónico verificada de tu cuenta de usuario y te enviaremos un enlace para restablecer la contraseña.", - "email_sent": "Enviamos el enlace de restablecimiento a tu dirección de correo electrónico", - "send_reset_link": "Enviar enlace de restablecimiento", - "errors": { - "smtp_not_enabled": "Vemos que tu administrador no ha habilitado SMTP, no podremos enviar un enlace para restablecer la contraseña" - }, - "toast": { - "success": { - "title": "Correo enviado", - "message": "Revisa tu bandeja de entrada para encontrar un enlace para restablecer tu contraseña. Si no aparece en unos minutos, revisa tu carpeta de spam." - }, - "error": { - "title": "¡Error!", - "message": "Algo salió mal. Por favor intenta de nuevo." - } - } - }, - "reset_password": { - "title": "Establecer nueva contraseña", - "description": "Asegura tu cuenta con una contraseña fuerte" - }, - "set_password": { - "title": "Asegura tu cuenta", - "description": "Establecer una contraseña te ayuda a iniciar sesión de forma segura" - }, - "sign_out": { - "toast": { - "error": { - "title": "¡Error!", - "message": "Error al cerrar sesión. Por favor intenta de nuevo." - } - } - }, - "ldap": { - "header": { - "label": "Continuar con {ldapProviderName}", - "sub_header": "Ingrese sus credenciales de {ldapProviderName}" - } - } - }, "sso": { "header": "Identidad", "description": "Configura tu dominio para acceder a funciones de seguridad, incluido el inicio de sesión único.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Correo electrónico", + "placeholder": "nombre@empresa.com", + "errors": { + "required": "El correo electrónico es obligatorio", + "invalid": "El correo electrónico no es válido" + } + }, + "password": { + "label": "Contraseña", + "set_password": "Establecer una contraseña", + "placeholder": "Ingresa la contraseña", + "confirm_password": { + "label": "Confirmar contraseña", + "placeholder": "Confirmar contraseña" + }, + "current_password": { + "label": "Contraseña actual" + }, + "new_password": { + "label": "Nueva contraseña", + "placeholder": "Ingresa nueva contraseña" + }, + "change_password": { + "label": { + "default": "Cambiar contraseña", + "submitting": "Cambiando contraseña" + } + }, + "errors": { + "match": "Las contraseñas no coinciden", + "empty": "Por favor ingresa tu contraseña", + "length": "La contraseña debe tener más de 8 caracteres", + "strength": { + "weak": "La contraseña es débil", + "strong": "La contraseña es fuerte" + } + }, + "submit": "Establecer contraseña", + "toast": { + "change_password": { + "success": { + "title": "¡Éxito!", + "message": "Contraseña cambiada exitosamente." + }, + "error": { + "title": "¡Error!", + "message": "Algo salió mal. Por favor intenta de nuevo." + } + } + } + }, + "unique_code": { + "label": "Código único", + "placeholder": "obtiene-establece-vuela", + "paste_code": "Pega el código enviado a tu correo electrónico", + "requesting_new_code": "Solicitando nuevo código", + "sending_code": "Enviando código" + }, + "already_have_an_account": "¿Ya tienes una cuenta?", + "login": "Iniciar sesión", + "create_account": "Crear una cuenta", + "new_to_plane": "¿Nuevo en Plane?", + "back_to_sign_in": "Volver a iniciar sesión", + "resend_in": "Reenviar en {seconds} segundos", + "sign_in_with_unique_code": "Iniciar sesión con código único", + "forgot_password": "¿Olvidaste tu contraseña?", + "username": { + "label": "Nombre de usuario", + "placeholder": "Ingrese su nombre de usuario" + } + }, + "sign_up": { + "header": { + "label": "Crea una cuenta para comenzar a gestionar el trabajo con tu equipo.", + "step": { + "email": { + "header": "Registrarse", + "sub_header": "" + }, + "password": { + "header": "Registrarse", + "sub_header": "Regístrate usando una combinación de correo electrónico y contraseña." + }, + "unique_code": { + "header": "Registrarse", + "sub_header": "Regístrate usando un código único enviado a la dirección de correo electrónico anterior." + } + } + }, + "errors": { + "password": { + "strength": "Intenta establecer una contraseña fuerte para continuar" + } + } + }, + "sign_in": { + "header": { + "label": "Inicia sesión para comenzar a gestionar el trabajo con tu equipo.", + "step": { + "email": { + "header": "Iniciar sesión o registrarse", + "sub_header": "" + }, + "password": { + "header": "Iniciar sesión o registrarse", + "sub_header": "Usa tu combinación de correo electrónico y contraseña para iniciar sesión." + }, + "unique_code": { + "header": "Iniciar sesión o registrarse", + "sub_header": "Inicia sesión usando un código único enviado a la dirección de correo electrónico anterior." + } + } + } + }, + "forgot_password": { + "title": "Restablecer tu contraseña", + "description": "Ingresa la dirección de correo electrónico verificada de tu cuenta de usuario y te enviaremos un enlace para restablecer la contraseña.", + "email_sent": "Enviamos el enlace de restablecimiento a tu dirección de correo electrónico", + "send_reset_link": "Enviar enlace de restablecimiento", + "errors": { + "smtp_not_enabled": "Vemos que tu administrador no ha habilitado SMTP, no podremos enviar un enlace para restablecer la contraseña" + }, + "toast": { + "success": { + "title": "Correo enviado", + "message": "Revisa tu bandeja de entrada para encontrar un enlace para restablecer tu contraseña. Si no aparece en unos minutos, revisa tu carpeta de spam." + }, + "error": { + "title": "¡Error!", + "message": "Algo salió mal. Por favor intenta de nuevo." + } + } + }, + "reset_password": { + "title": "Establecer nueva contraseña", + "description": "Asegura tu cuenta con una contraseña fuerte" + }, + "set_password": { + "title": "Asegura tu cuenta", + "description": "Establecer una contraseña te ayuda a iniciar sesión de forma segura" + }, + "sign_out": { + "toast": { + "error": { + "title": "¡Error!", + "message": "Error al cerrar sesión. Por favor intenta de nuevo." + } + } + }, + "ldap": { + "header": { + "label": "Continuar con {ldapProviderName}", + "sub_header": "Ingrese sus credenciales de {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/es/automation.json b/packages/i18n/src/locales/es/automation.json index 2020a300732..f49d5296e66 100644 --- a/packages/i18n/src/locales/es/automation.json +++ b/packages/i18n/src/locales/es/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Atrás", "next": "Agregar acción" + }, + "warning": { + "disabled_trigger_switching": "No puedes cambiar el tipo de disparador una vez creado" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Selecciona una opción", "handler_name": { "add_comment": "Agregar comentario", - "change_property": "Cambiar propiedad" + "change_property": "Cambiar propiedad", + "run_script": "Ejecutar script" }, "configuration": { "label": "Configuración", @@ -89,6 +93,9 @@ "comment_block": { "title": "Agregar comentario" }, + "run_script_block": { + "title": "Ejecutar script" + }, "change_property_block": { "title": "Cambiar propiedad" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Título de la automatización", + "scope": "Alcance", + "projects": "Proyectos", "last_run_on": "Última ejecución", "created_on": "Creado el", "last_updated_on": "Última actualización", @@ -230,6 +239,35 @@ "description": "Las automatizaciones son una forma de automatizar tareas en tu proyecto.", "sub_description": "Recupera el 80% de tu tiempo administrativo cuando uses Automatizaciones." } + }, + "global_automations": { + "project_select": { + "label": "Selecciona los proyectos en los que ejecutar esta automatización", + "all_projects": { + "label": "Todos los proyectos", + "description": "La automatización se ejecutará para todos los proyectos del espacio de trabajo." + }, + "select_projects": { + "label": "Seleccionar proyectos", + "description": "La automatización se ejecutará para los proyectos seleccionados del espacio de trabajo.", + "placeholder": "Seleccionar proyectos" + } + }, + "settings": { + "sidebar_label": "Automatizaciones", + "title": "Automatizaciones", + "description": "Estandariza los procesos en tu espacio de trabajo con automatizaciones globales." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Proyecto", + "multiple": "Múltiples", + "all": "Todos" + } + } + } } } } diff --git a/packages/i18n/src/locales/es/common.json b/packages/i18n/src/locales/es/common.json index eed1033def9..64440c9c653 100644 --- a/packages/i18n/src/locales/es/common.json +++ b/packages/i18n/src/locales/es/common.json @@ -17,6 +17,7 @@ "no": "No", "ok": "Aceptar", "name": "Nombre", + "unknown_user": "Usuario desconocido", "description": "Descripción", "search": "Buscar", "add_member": "Agregar miembro", @@ -56,9 +57,9 @@ "no_worklogs": "Sin registros de trabajo aún", "no_history": "Sin historial aún" }, - "appearance": "Apariencia", + "preferences": "Preferencias", + "language_and_time": "Idioma y hora", "notifications": "Notificaciones", - "connections": "Conexiones", "workspaces": "Espacios de trabajo", "create_workspace": "Crear espacio de trabajo", "invitations": "Invitaciones", @@ -70,6 +71,10 @@ "something_went_wrong_please_try_again": "Algo salió mal. Por favor, inténtalo de nuevo.", "load_more": "Cargar más", "select_or_customize_your_interface_color_scheme": "Selecciona o personaliza el esquema de color de tu interfaz.", + "timezone_setting": "Configuración de zona horaria actual.", + "language_setting": "Elige el idioma utilizado en la interfaz de usuario.", + "settings_moved_to_preferences": "La configuración de zona horaria e idioma se ha movido a preferencias.", + "go_to_preferences": "Ir a preferencias", "select_the_cursor_motion_style_that_feels_right_for_you": "Selecciona el estilo de movimiento del cursor que te parezca adecuado.", "theme": "Tema", "smooth_cursor": "Cursor suave", @@ -137,7 +142,6 @@ "workspace_logo": "Logo del espacio de trabajo", "new_issue": "Nuevo elemento de trabajo", "your_work": "Tu trabajo", - "workspace_dashboards": "Tableros", "drafts": "Borradores", "projects": "Proyectos", "views": "Vistas", @@ -165,6 +169,7 @@ "project_created_successfully": "Proyecto creado exitosamente", "project_created_successfully_description": "Proyecto creado exitosamente. Ahora puedes comenzar a agregar elementos de trabajo.", "project_name_already_taken": "El nombre del proyecto ya está en uso.", + "project_name_cannot_contain_special_characters": "El nombre del proyecto no puede contener caracteres especiales.", "project_identifier_already_taken": "El identificador del proyecto ya está en uso.", "project_cover_image_alt": "Imagen de portada del proyecto", "name_is_required": "El nombre es requerido", @@ -209,6 +214,7 @@ "issues": "Elementos de trabajo", "cycles": "Ciclos", "modules": "Módulos", + "pages": "Páginas", "intake": "Entrada", "renew": "Renovar", "preview": "Vista previa", @@ -300,6 +306,7 @@ "start_date": "Fecha de inicio", "end_date": "Fecha de fin", "due_date": "Fecha de vencimiento", + "target_date": "Fecha objetivo", "estimate": "Estimación", "change_parent_issue": "Cambiar elemento de trabajo padre", "remove_parent_issue": "Eliminar elemento de trabajo padre", @@ -358,6 +365,8 @@ "new_password_must_be_different_from_old_password": "La nueva contraseña debe ser diferente a la contraseña anterior", "edited": "Modificado", "bot": "Bot", + "settings_description": "Administra las preferencias de tu cuenta, espacio de trabajo y proyecto en un solo lugar. Cambia entre pestañas para configurar fácilmente.", + "back_to_workspace": "Volver al espacio de trabajo", "upgrade_request": "Pide a tu administrador del espacio de trabajo que actualice.", "copied_to_clipboard": "Copiado al portapapeles", "copied_to_clipboard_description": "La URL se ha copiado correctamente al portapapeles", @@ -424,6 +433,9 @@ "modules": "Módulos", "labels": "Etiquetas", "label": "Etiqueta", + "admins": "Administradores", + "users": "Usuarios", + "guests": "Invitados", "assignees": "Asignados", "assignee": "Asignado", "created_by": "Creado por", @@ -453,6 +465,8 @@ "work_item": "Elemento de trabajo", "work_items": "Elementos de trabajo", "sub_work_item": "Sub-elemento de trabajo", + "views": "Vistas", + "pages": "Páginas", "add": "Agregar", "warning": "Advertencia", "updating": "Actualizando", @@ -498,7 +512,7 @@ "workspace_level": "Nivel de espacio de trabajo", "order_by": { "label": "Ordenar por", - "manual": "Manual", + "manual": "Manual - Clasificación", "last_created": "Último creado", "last_updated": "Última actualización", "start_date": "Fecha de inicio", @@ -534,6 +548,7 @@ "continue": "Continuar", "resend": "Reenviar", "relations": "Relaciones", + "dependencies": "Dependencias", "errors": { "default": { "title": "¡Error!", @@ -565,11 +580,27 @@ "quarter": "Trimestre", "press_for_commands": "Presiona '/' para comandos", "click_to_add_description": "Haz clic para agregar descripción", + "on_track": "En camino", + "off_track": "Fuera de camino", + "at_risk": "En riesgo", + "timeline": "Cronograma", + "completion": "Finalización", + "upcoming": "Próximo", + "completed": "Completado", + "in_progress": "En progreso", + "planned": "Planificado", + "paused": "Pausado", "search": { "label": "Buscar", "placeholder": "Escribe para buscar", "no_matches_found": "No se encontraron coincidencias", - "no_matching_results": "No hay resultados coincidentes" + "no_matching_results": "No hay resultados coincidentes", + "min_chars": "Escribe al menos {count} caracteres para buscar", + "error": "Error al obtener los resultados de búsqueda", + "no_results": { + "title": "No hay resultados coincidentes", + "description": "Elimina los criterios de búsqueda para ver todos los resultados" + } }, "actions": { "edit": "Editar", @@ -578,6 +609,7 @@ "copy_link": "Copiar enlace", "copy_branch_name": "Copiar nombre de rama", "archive": "Archivar", + "restore": "Restaurar", "delete": "Eliminar", "remove_relation": "Eliminar relación", "subscribe": "Suscribirse", @@ -585,7 +617,9 @@ "clear_sorting": "Limpiar ordenamiento", "show_weekends": "Mostrar fines de semana", "enable": "Habilitar", - "disable": "Deshabilitar" + "disable": "Deshabilitar", + "copy_markdown": "Copiar markdown", + "reply": "Responder" }, "name": "Nombre", "discard": "Descartar", @@ -598,6 +632,7 @@ "disabled": "Deshabilitado", "mandate": "Mandato", "mandatory": "Obligatorio", + "global": "Global", "yes": "Sí", "no": "No", "please_wait": "Por favor espera", @@ -607,6 +642,7 @@ "or": "o", "next": "Siguiente", "back": "Atrás", + "retry": "Reintentar", "cancelling": "Cancelando", "configuring": "Configurando", "clear": "Limpiar", @@ -661,30 +697,27 @@ "deactivated_user": "Usuario desactivado", "apply": "Aplicar", "applying": "Aplicando", - "users": "Usuarios", - "admins": "Administradores", - "guests": "Invitados", - "on_track": "En camino", - "off_track": "Fuera de camino", - "at_risk": "En riesgo", - "timeline": "Cronograma", - "completion": "Finalización", - "upcoming": "Próximo", - "completed": "Completado", - "in_progress": "En progreso", - "planned": "Planificado", - "paused": "Pausado", + "overview": "Resumen", "no_of": "N.º de {entity}", "resolved": "Resuelto", + "get_started": "Comenzar", "worklogs": "Registros de trabajo", "project_updates": "Actualizaciones del proyecto", - "overview": "Resumen", "workflows": "Flujos de trabajo", + "templates": "Plantillas", + "business": "Negocio", "members_and_teamspaces": "Miembros y espacios de equipo", + "recurring_work_items": "Elementos de trabajo recurrentes", + "milestones": "Hitos", "open_in_full_screen": "Abrir {page} en pantalla completa", "details": "Detalles", "project_structure": "Estructura del proyecto", - "custom_properties": "Propiedades personalizadas" + "custom_properties": "Propiedades personalizadas", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Eje X", @@ -790,24 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane no se inició. Esto podría deberse a que uno o más servicios de Plane fallaron al iniciar.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Selecciona View Logs desde setup.sh y los logs de Docker para estar seguro." }, + "customize_navigation": "Personalizar navegación", + "personal": "Personal", + "accordion_navigation_control": "Navegación lateral tipo acordeón", + "horizontal_navigation_bar": "Navegación por pestañas", + "show_limited_projects_on_sidebar": "Mostrar proyectos limitados en la barra lateral", + "enter_number_of_projects": "Ingresa el número de proyectos", + "pin": "Fijar", + "unpin": "Desfijar", + "workspace_dashboards": "Tableros", "pi_chat": "Plane AI", "in_app": "En la aplicación", "forms": "Formularios", - "choose_workspace_for_integration": "Elige un espacio de trabajo para conectar esta app", - "integrations_description": "Las apps que funcionan con Plane deben conectarse a un espacio de trabajo donde eres administrador.", - "create_a_new_workspace": "Crear un nuevo espacio de trabajo", - "learn_more_about_workspaces": "Aprende más sobre espacios de trabajo", - "no_workspaces_to_connect": "No hay espacios de trabajo para conectar", - "no_workspaces_to_connect_description": "Necesitarás crear un espacio de trabajo para poder conectar integraciones y plantillas", + "milestones": "Hitos", + "milestones_description": "Los hitos proporcionan una capa para alinear los elementos de trabajo hacia fechas de finalización compartidas.", "file_upload": { "upload_text": "Haz clic aquí para subir archivo", "drag_drop_text": "Arrastrar y soltar", "processing": "Procesando", - "invalid": "Tipo de archivo inválido", + "invalid_file_type": "Tipo de archivo inválido", "missing_fields": "Campos faltantes", "success": "¡{fileName} subido!" }, - "project_name_cannot_contain_special_characters": "El nombre del proyecto no puede contener caracteres especiales.", "date": "Fecha", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/es/editor.json b/packages/i18n/src/locales/es/editor.json index d7be46b5187..ec7dedbf94d 100644 --- a/packages/i18n/src/locales/es/editor.json +++ b/packages/i18n/src/locales/es/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Por favor, ingrese una URL válida." } + }, + "ai_block": { + "content": { + "placeholder": "Describe el contenido de este bloque", + "generated_here": "Tu contenido de IA se generará aquí" + }, + "block_types": { + "placeholder": "Seleccionar tipo de bloque", + "summarize_page": "Resumir página", + "custom_prompt": "Indicación personalizada" + }, + "actions": { + "discard": "Descartar", + "generate": "Generar", + "generating": "Generando", + "rewriting": "Reescribiendo", + "rewrite": "Reescribir", + "use_this": "Usar esto", + "refine": "Refinar" + } } } diff --git a/packages/i18n/src/locales/es/empty-state.json b/packages/i18n/src/locales/es/empty-state.json index 62b46dad6c0..08feb2cc7e3 100644 --- a/packages/i18n/src/locales/es/empty-state.json +++ b/packages/i18n/src/locales/es/empty-state.json @@ -249,10 +249,22 @@ "title": "Rastrea hojas de tiempo para todos los miembros", "description": "Registra el tiempo en los elementos de trabajo para ver hojas de tiempo detalladas de cualquier miembro del equipo en todos los proyectos." }, + "group_syncing": { + "title": "Aún no hay asignaciones de grupos" + }, "template_setting": { "title": "Aún no hay plantillas", "description": "Reduce el tiempo de configuración creando plantillas para proyectos, elementos de trabajo y páginas — y comienza un nuevo trabajo en segundos.", "cta_primary": "Crear plantilla" + }, + "workflows": { + "title": "Aún no hay flujos de trabajo", + "description": "Crea flujos de trabajo para gestionar el progreso de tus elementos de trabajo.", + "cta_primary": "Agregar nuevo flujo de trabajo", + "states": { + "title": "Agregar estados", + "description": "Selecciona los estados por los que avanza el elemento de trabajo." + } } } } diff --git a/packages/i18n/src/locales/es/integration.json b/packages/i18n/src/locales/es/integration.json index f33dcceb774..8c7b31b53ad 100644 --- a/packages/i18n/src/locales/es/integration.json +++ b/packages/i18n/src/locales/es/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Error del servidor al cargar estados" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Conecta y sincroniza tus repositorios de Bitbucket Data Center con Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Validar tokens de IdP externos para acceso a la API.", @@ -302,10 +306,10 @@ "generic_error": "Ocurrió un error inesperado al procesar tu solicitud", "connection_not_found": "No se pudo encontrar la conexión solicitada", "multiple_connections_found": "Se encontraron múltiples conexiones cuando solo se esperaba una", + "cannot_create_multiple_connections": "Ya tienes una conexión con una organización. Por favor, desconecta la conexión existente antes de conectar una nueva.", "installation_not_found": "No se pudo encontrar la instalación solicitada", "user_not_found": "No se pudo encontrar el usuario solicitado", "error_fetching_token": "Error al obtener el token de autenticación", - "cannot_create_multiple_connections": "Ya tienes una conexión con una organización. Por favor, desconecta la conexión existente antes de conectar una nueva.", "invalid_app_credentials": "Las credenciales de la aplicación proporcionadas son inválidas", "invalid_app_installation_id": "Error al instalar la aplicación" }, @@ -316,6 +320,7 @@ "pulling": "Extrayendo", "timed_out": "Tiempo agotado", "pulled": "Extraído", + "progressing": "En progreso", "transforming": "Transformando", "transformed": "Transformado", "pushing": "Enviando", diff --git a/packages/i18n/src/locales/es/module.json b/packages/i18n/src/locales/es/module.json index 485ac697552..4e6b5d6767c 100644 --- a/packages/i18n/src/locales/es/module.json +++ b/packages/i18n/src/locales/es/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Módulo} other {Módulos}}", - "no_module": "Sin módulo" + "no_module": "Sin módulo", + "select": "Agregar módulos" } } diff --git a/packages/i18n/src/locales/es/navigation.json b/packages/i18n/src/locales/es/navigation.json index dc55e670d53..3c04912fcba 100644 --- a/packages/i18n/src/locales/es/navigation.json +++ b/packages/i18n/src/locales/es/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "No se encontraron resultados" + } + } + }, "sidebar": { + "stickies": "Notas adhesivas", + "your_work": "Tu trabajo", "projects": "Proyectos", "pages": "Páginas", "new_work_item": "Nuevo elemento de trabajo", "home": "Inicio", - "your_work": "Tu trabajo", "inbox": "Bandeja de entrada", "workspace": "Espacio de trabajo", "views": "Vistas", @@ -21,14 +29,6 @@ "epics": "Epics", "upgrade_plan": "Actualizar plan", "plane_pro": "Plane Pro", - "business": "Business", - "recurring_work_items": "Tareas recurrentes" - }, - "command_k": { - "empty_state": { - "search": { - "title": "No se encontraron resultados" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/es/page.json b/packages/i18n/src/locales/es/page.json index cad044bae2c..c013497b230 100644 --- a/packages/i18n/src/locales/es/page.json +++ b/packages/i18n/src/locales/es/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Enlazar páginas", - "show_wiki_pages": "Mostrar páginas de wiki", - "link_pages_to": "Enlazar páginas a", - "linked_pages": "Páginas enlazadas", - "no_description": "Esta página está vacía. Escriba algo aquí y véalo como este marcador de posición", - "toasts": { - "link": { - "success": { - "title": "Páginas actualizadas", - "message": "Páginas actualizadas con éxito" - }, - "error": { - "title": "Páginas no actualizadas", - "message": "No se pudieron actualizar las páginas" - } - }, - "remove": { - "success": { - "title": "Página eliminada", - "message": "Página eliminada con éxito" - }, - "error": { - "title": "Página no eliminada", - "message": "No se pudo eliminar la página" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Faltan imágenes", "description": "Añade imágenes para verlas aquí." } + }, + "comments": { + "label": "Comentarios", + "empty_state": { + "title": "Sin comentarios", + "description": "Agrega comentarios para verlos aquí." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "El nombre de la nota adhesiva no puede tener más de 100 caracteres.", + "already_exists": "Ya existe una nota adhesiva sin descripción" + }, + "created": { + "title": "Nota adhesiva creada", + "message": "La nota adhesiva se ha creado correctamente" + }, + "not_created": { + "title": "Nota adhesiva no creada", + "message": "No se pudo crear la nota adhesiva" + }, + "updated": { + "title": "Nota adhesiva actualizada", + "message": "La nota adhesiva se ha actualizado correctamente" + }, + "not_updated": { + "title": "Nota adhesiva no actualizada", + "message": "No se pudo actualizar la nota adhesiva" + }, + "removed": { + "title": "Nota adhesiva eliminada", + "message": "La nota adhesiva se ha eliminado correctamente" + }, + "not_removed": { + "title": "Nota adhesiva no eliminada", + "message": "No se pudo eliminar la nota adhesiva" } }, "open_button": "Abrir panel de navegación", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Mover", + "loading": "Moviendo" + }, + "cannot_move_to_teamspace": "Las páginas privadas y compartidas no se pueden mover a un espacio de equipo.", "placeholders": { + "workspace_to_all": "Buscar proyectos y espacios de equipo", + "workspace_to_project": "Buscar proyectos", + "project_to_all": "Buscar proyectos y espacios de equipo", + "project_to_project": "Buscar proyectos", "project_to_all_with_wiki": "Buscar colecciones de wiki, proyectos y espacios de equipo", "project_to_project_with_wiki": "Buscar colecciones de wiki y proyectos" }, "toasts": { + "success": { + "title": "¡Éxito!", + "message": "Página movida correctamente." + }, + "error": { + "title": "¡Error!", + "message": "No se pudo mover la página. Por favor, inténtalo de nuevo más tarde." + }, "collection_error": { "title": "Movida al wiki", "message": "La página se movió al wiki, pero no pudo añadirse a la colección seleccionada. Permanece en General." diff --git a/packages/i18n/src/locales/es/project-settings.json b/packages/i18n/src/locales/es/project-settings.json index 6aec3b3ea3f..6ec66f538ee 100644 --- a/packages/i18n/src/locales/es/project-settings.json +++ b/packages/i18n/src/locales/es/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Miembros", "project_lead": "Líder del proyecto", + "project_lead_description": "Seleccione el responsable del proyecto.", "default_assignee": "Asignado por defecto", + "default_assignee_description": "Seleccione el asignado predeterminado para el proyecto.", + "project_subscribers": "Suscriptores del proyecto", + "project_subscribers_description": "Seleccione los miembros que recibirán notificaciones para este proyecto.", "guest_super_permissions": { "title": "Otorgar acceso de visualización a todos los elementos de trabajo para usuarios invitados:", "sub_heading": "Esto permitirá a los invitados tener acceso de visualización a todos los elementos de trabajo del proyecto." @@ -30,13 +34,11 @@ "title": "Invitar miembros", "sub_heading": "Invita miembros para trabajar en tu proyecto.", "select_co_worker": "Seleccionar compañero de trabajo" - }, - "project_lead_description": "Seleccione el responsable del proyecto.", - "default_assignee_description": "Seleccione el asignado predeterminado para el proyecto.", - "project_subscribers": "Suscriptores del proyecto", - "project_subscribers_description": "Seleccione los miembros que recibirán notificaciones para este proyecto." + } }, "states": { + "heading": "Estados", + "description": "Define y personaliza los estados del flujo de trabajo para rastrear el progreso de tus elementos de trabajo.", "describe_this_state_for_your_members": "Describe este estado para tus miembros.", "empty_state": { "title": "No estados disponibles para el grupo {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etiquetas", + "description": "Crea etiquetas personalizadas para categorizar y organizar tus elementos de trabajo", "label_title": "Título de la etiqueta", "label_title_is_required": "El título de la etiqueta es requerido", "label_max_char": "El nombre de la etiqueta no debe exceder 255 caracteres", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Estimaciones", + "description": "Te ayudan a comunicar la complejidad y la carga de trabajo del equipo.", "label": "Estimaciones", "title": "Activar estimaciones para mi proyecto", - "description": "Te ayudan a comunicar la complejidad y la carga de trabajo del equipo.", + "enable_description": "Te ayudan a comunicar la complejidad y la carga de trabajo del equipo.", "no_estimate": "Sin estimación", "new": "Nuevo sistema de estimación", "create": { @@ -112,6 +118,16 @@ "title": "Error al reordenar estimaciones", "message": "No pudimos reordenar las estimaciones, por favor intenta de nuevo" } + }, + "switch": { + "success": { + "title": "Sistema de estimaciones creado", + "message": "Creado y habilitado correctamente" + }, + "error": { + "title": "Error", + "message": "Algo salió mal" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatizaciones", + "heading": "Automatizaciones", + "description": "Configura acciones automatizadas para optimizar tu flujo de trabajo de gestión de proyectos y reducir tareas manuales.", "auto-archive": { "title": "Archivar automáticamente elementos de trabajo cerrados", "description": "Plane archivará automáticamente los elementos de trabajo que hayan sido completados o cancelados.", @@ -194,90 +212,116 @@ "description": "Configura GitHub y otras integraciones para sincronizar los elementos de trabajo de tu proyecto." } }, - "cycles": { - "auto_schedule": { - "heading": "Programación automática de ciclos", - "description": "Mantén los ciclos en movimiento sin configuración manual.", - "tooltip": "Crea automáticamente nuevos ciclos basados en tu programación elegida.", - "edit_button": "Editar", - "form": { - "cycle_title": { - "label": "Título del ciclo", - "placeholder": "Título", - "tooltip": "El título se agregará con números para los ciclos subsiguientes. Por ejemplo: Diseño - 1/2/3", - "validation": { - "required": "El título del ciclo es requerido", - "max_length": "El título no debe exceder los 255 caracteres" - } - }, - "cycle_duration": { - "label": "Duración del ciclo", - "unit": "Semanas", - "validation": { - "required": "La duración del ciclo es requerida", - "min": "La duración del ciclo debe ser al menos 1 semana", - "max": "La duración del ciclo no puede exceder 30 semanas", - "positive": "La duración del ciclo debe ser positiva" - } - }, - "cooldown_period": { - "label": "Período de enfriamiento", - "unit": "días", - "tooltip": "Pausa entre ciclos antes de que comience el siguiente.", - "validation": { - "required": "El período de enfriamiento es requerido", - "negative": "El período de enfriamiento no puede ser negativo" - } - }, - "start_date": { - "label": "Día de inicio del ciclo", - "validation": { - "required": "La fecha de inicio es requerida", - "past": "La fecha de inicio no puede estar en el pasado" - } + "workflows": { + "toggle": { + "title": "Habilitar flujos de trabajo", + "description": "Configura flujos de trabajo para controlar el movimiento de los elementos de trabajo", + "no_states_tooltip": "No se han agregado estados al flujo de trabajo.", + "no_work_item_types_tooltip": "No se han agregado tipos de elementos de trabajo al flujo de trabajo.", + "no_states_or_work_item_types_tooltip": "No se han agregado estados ni tipos de elementos de trabajo al flujo de trabajo.", + "toast": { + "loading": { + "enabling": "Habilitando flujos de trabajo", + "disabling": "Deshabilitando flujos de trabajo" }, - "number_of_cycles": { - "label": "Número de ciclos futuros", - "validation": { - "required": "El número de ciclos es requerido", - "min": "Se requiere al menos 1 ciclo", - "max": "No se pueden programar más de 3 ciclos" - } + "success": { + "title": "¡Éxito!", + "message": "Flujos de trabajo habilitados correctamente." }, - "auto_rollover": { - "label": "Transferencia automática de elementos de trabajo", - "tooltip": "El día que se complete un ciclo, mover todos los elementos de trabajo sin terminar al siguiente ciclo." + "error": { + "title": "¡Error!", + "message": "Error al habilitar los flujos de trabajo. Por favor, inténtalo de nuevo." + } + } + }, + "heading": "Flujos de trabajo", + "description": "Automatiza las transiciones de elementos de trabajo y establece reglas para controlar cómo se mueven las tareas a través del flujo de tu proyecto.", + "add_button": "Agregar nuevo flujo de trabajo", + "search": "Buscar flujos de trabajo", + "detail": { + "define": "Definir flujo de trabajo", + "add_states": "Agregar estados", + "unmapped_states": { + "title": "Estados no asignados detectados", + "description": "Algunos elementos de trabajo para los tipos seleccionados están actualmente en estados que no existen en este flujo de trabajo.", + "note": "Si habilitas este flujo de trabajo, estos elementos se moverán automáticamente al estado inicial de este flujo de trabajo.", + "label": "Estados faltantes", + "tooltip": "Algunos elementos de trabajo están en estados que no están asignados a este flujo de trabajo. Abre el flujo de trabajo para revisarlo." + } + }, + "select_states": { + "empty_state": { + "title": "Todos los estados están en uso", + "description": "Todos los estados definidos para este proyecto ya están presentes en tu flujo de trabajo actual." + } + }, + "default_footer": { + "fallback_message": "Este flujo de trabajo se aplica a cualquier tipo de elemento de trabajo que no esté asignado a un flujo de trabajo." + }, + "create": { + "heading": "Crear nuevo flujo de trabajo", + "name": { + "placeholder": "Agrega un nombre único", + "validation": { + "max_length": "El nombre debe tener menos de 255 caracteres", + "required": "El nombre es obligatorio", + "invalid": "El nombre solo puede contener letras, números, espacios, guiones y apóstrofes" } }, - "toast": { - "toggle": { - "loading_enable": "Habilitando programación automática de ciclos", - "loading_disable": "Deshabilitando programación automática de ciclos", - "success": { - "title": "¡Éxito!", - "message": "Programación automática de ciclos activada exitosamente." - }, - "error": { - "title": "¡Error!", - "message": "Error al activar la programación automática de ciclos." - } - }, - "save": { - "loading": "Guardando configuración de programación automática de ciclos", - "success": { - "title": "¡Éxito!", - "message_create": "Configuración de programación automática de ciclos guardada exitosamente.", - "message_update": "Configuración de programación automática de ciclos actualizada exitosamente." - }, - "error": { - "title": "¡Error!", - "message_create": "Error al guardar la configuración de programación automática de ciclos.", - "message_update": "Error al actualizar la configuración de programación automática de ciclos." - } + "description": { + "placeholder": "Agrega una descripción breve", + "validation": { + "invalid": "La descripción solo puede contener letras, números, espacios, guiones y apóstrofes" } + }, + "work_item_type": { + "label": "Tipo de elemento de trabajo" + }, + "success": { + "title": "¡Éxito!", + "message": "Flujo de trabajo creado correctamente." + }, + "error": { + "title": "¡Error!", + "message": "Error al crear el flujo de trabajo. Por favor, inténtalo de nuevo." + } + }, + "update": { + "success": { + "title": "¡Éxito!", + "message": "Flujo de trabajo actualizado correctamente." + }, + "error": { + "title": "¡Error!", + "message": "Error al actualizar el flujo de trabajo. Por favor, inténtalo de nuevo." + } + }, + "delete": { + "loading": "Eliminando flujo de trabajo", + "success": { + "title": "¡Éxito!", + "message": "Flujo de trabajo eliminado correctamente." + }, + "error": { + "title": "¡Error!", + "message": "Error al eliminar el flujo de trabajo. Por favor, inténtalo de nuevo." + } + }, + "add_states": { + "success": { + "title": "¡Éxito!", + "message": "Estados agregados correctamente." + }, + "error": { + "title": "¡Error!", + "message": "Error al agregar los estados. Por favor, inténtalo de nuevo." } } }, + "work_item_types": { + "heading": "Tipos de elemento de trabajo", + "description": "Crea y personaliza diferentes tipos de elementos de trabajo con propiedades únicas" + }, "features": { "cycles": { "title": "Ciclos", @@ -385,6 +429,98 @@ "success": "Función del proyecto actualizada correctamente.", "error": "Algo salió mal al actualizar la función del proyecto. Por favor, inténtalo de nuevo." } + }, + "project_updates": { + "heading": "Actualizaciones del proyecto", + "description": "Seguimiento consolidado y monitoreo del progreso de este proyecto" + }, + "templates": { + "heading": "Plantillas", + "description": "Ahorra el 80 % del tiempo dedicado a crear proyectos, elementos de trabajo y páginas cuando usas plantillas." + }, + "cycles": { + "auto_schedule": { + "heading": "Programación automática de ciclos", + "description": "Mantén los ciclos en movimiento sin configuración manual.", + "tooltip": "Crea automáticamente nuevos ciclos basados en tu programación elegida.", + "edit_button": "Editar", + "form": { + "cycle_title": { + "label": "Título del ciclo", + "placeholder": "Título", + "tooltip": "El título se agregará con números para los ciclos subsiguientes. Por ejemplo: Diseño - 1/2/3", + "validation": { + "required": "El título del ciclo es requerido", + "max_length": "El título no debe exceder los 255 caracteres" + } + }, + "cycle_duration": { + "label": "Duración del ciclo", + "unit": "Semanas", + "validation": { + "required": "La duración del ciclo es requerida", + "min": "La duración del ciclo debe ser al menos 1 semana", + "max": "La duración del ciclo no puede exceder 30 semanas", + "positive": "La duración del ciclo debe ser positiva" + } + }, + "cooldown_period": { + "label": "Período de enfriamiento", + "unit": "días", + "tooltip": "Pausa entre ciclos antes de que comience el siguiente.", + "validation": { + "required": "El período de enfriamiento es requerido", + "negative": "El período de enfriamiento no puede ser negativo" + } + }, + "start_date": { + "label": "Día de inicio del ciclo", + "validation": { + "required": "La fecha de inicio es requerida", + "past": "La fecha de inicio no puede estar en el pasado" + } + }, + "number_of_cycles": { + "label": "Número de ciclos futuros", + "validation": { + "required": "El número de ciclos es requerido", + "min": "Se requiere al menos 1 ciclo", + "max": "No se pueden programar más de 3 ciclos" + } + }, + "auto_rollover": { + "label": "Transferencia automática de elementos de trabajo", + "tooltip": "El día que se complete un ciclo, mover todos los elementos de trabajo sin terminar al siguiente ciclo." + } + }, + "toast": { + "toggle": { + "loading_enable": "Habilitando programación automática de ciclos", + "loading_disable": "Deshabilitando programación automática de ciclos", + "success": { + "title": "¡Éxito!", + "message": "Programación automática de ciclos activada exitosamente." + }, + "error": { + "title": "¡Error!", + "message": "Error al activar la programación automática de ciclos." + } + }, + "save": { + "loading": "Guardando configuración de programación automática de ciclos", + "success": { + "title": "¡Éxito!", + "message_create": "Configuración de programación automática de ciclos guardada exitosamente.", + "message_update": "Configuración de programación automática de ciclos actualizada exitosamente." + }, + "error": { + "title": "¡Error!", + "message_create": "Error al guardar la configuración de programación automática de ciclos.", + "message_update": "Error al actualizar la configuración de programación automática de ciclos." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/es/project.json b/packages/i18n/src/locales/es/project.json index 03727245701..fc2df3542bf 100644 --- a/packages/i18n/src/locales/es/project.json +++ b/packages/i18n/src/locales/es/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Guarda vistas filtradas para tu proyecto. Crea tantas como necesites", + "description": "Las vistas son un conjunto de filtros guardados que usas frecuentemente o a los que quieres tener fácil acceso. Todos tus colegas en un proyecto pueden ver las vistas de todos y elegir la que mejor se adapte a sus necesidades.", + "primary_button": { + "text": "Crea tu primera vista", + "comic": { + "title": "Las vistas funcionan sobre las propiedades de los Elementos de trabajo.", + "description": "Puedes crear una vista desde aquí con tantas propiedades como filtros como consideres apropiado." + } + }, + "filter": { + "title": "No hay vistas coincidentes", + "description": "Ninguna vista coincide con los criterios de búsqueda.\n Crea una nueva vista en su lugar." + } + }, + "no_archived_issues": { + "title": "Aún no hay elementos de trabajo archivados", + "description": "Manualmente o mediante automatización, puedes archivar elementos de trabajo que estén completados o cancelados. Encuéntralos aquí una vez archivados.", + "primary_button": { + "text": "Configurar automatización" + } + }, + "issues_empty_filter": { + "title": "No se encontraron elementos de trabajo que coincidan con los filtros aplicados", + "secondary_button": { + "text": "Limpiar todos los filtros" + } + }, + "public": { + "title": "Aún no hay páginas públicas", + "description": "Ve las páginas compartidas con todos en tu proyecto aquí mismo.", + "primary_button": { + "text": "Crea tu primera página" + } + }, + "archived": { + "title": "Aún no hay páginas archivadas", + "description": "Archiva las páginas que no estén en tu radar. Accede a ellas aquí cuando las necesites." + }, + "shared": { + "title": "Aún no hay páginas compartidas", + "description": "Las páginas que otros han compartido contigo aparecerán aquí." + } + }, + "delete_view": { + "title": "¿Estás seguro de que quieres eliminar esta vista?", + "content": "Si confirmas, todas las opciones de ordenación, filtro y visualización + el diseño que has elegido para esta vista se eliminarán permanentemente sin posibilidad de restaurarlas." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Guarda vistas filtradas para tu proyecto. Crea tantas como necesites", - "description": "Las vistas son un conjunto de filtros guardados que usas frecuentemente o a los que quieres tener fácil acceso. Todos tus colegas en un proyecto pueden ver las vistas de todos y elegir la que mejor se adapte a sus necesidades.", - "primary_button": { - "text": "Crea tu primera vista", - "comic": { - "title": "Las vistas funcionan sobre las propiedades de los Elementos de trabajo.", - "description": "Puedes crear una vista desde aquí con tantas propiedades como filtros como consideres apropiado." - } - } - }, - "filter": { - "title": "No hay vistas coincidentes", - "description": "Ninguna vista coincide con los criterios de búsqueda.\n Crea una nueva vista en su lugar." - } - }, - "delete_view": { - "title": "¿Estás seguro de que quieres eliminar esta vista?", - "content": "Si confirmas, todas las opciones de ordenación, filtro y visualización + el diseño que has elegido para esta vista se eliminarán permanentemente sin posibilidad de restaurarlas." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Manual" } }, + "project_members": { + "full_name": "Nombre completo", + "display_name": "Nombre para mostrar", + "email": "Correo electrónico", + "joining_date": "Fecha de ingreso", + "role": "Rol" + }, "project": { "members_import": { "title": "Importar miembros desde CSV", diff --git a/packages/i18n/src/locales/es/settings.json b/packages/i18n/src/locales/es/settings.json index 9a9cf22d168..68a09d1a640 100644 --- a/packages/i18n/src/locales/es/settings.json +++ b/packages/i18n/src/locales/es/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferencias", + "description": "Personaliza tu experiencia de la aplicación según tu forma de trabajar" + }, "notifications": { + "heading": "Notificaciones por correo electrónico", + "description": "Mantente al tanto de los elementos de trabajo a los que estás suscrito. Activa esto para recibir notificaciones.", "select_default_view": "Seleccionar vista predeterminada", "compact": "Compacto", "full": "Pantalla completa" + }, + "security": { + "heading": "Seguridad" + }, + "api_tokens": { + "title": "Tokens de acceso personal", + "description": "Genera tokens de API seguros para integrar tus datos con sistemas y aplicaciones externas." + }, + "activity": { + "heading": "Actividad", + "description": "Realiza un seguimiento de tus acciones y cambios recientes en todos los proyectos y elementos de trabajo." + }, + "connections": { + "title": "Conexiones", + "heading": "Conexiones", + "description": "Administra la configuración de conexiones de tu espacio de trabajo." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Perfil", "security": "Seguridad", "activity": "Actividad", - "appearance": "Apariencia", + "preferences": "Preferencias", "notifications": "Notificaciones", + "api-tokens": "Tokens de acceso personal", "connections": "Conexiones" }, "tabs": { diff --git a/packages/i18n/src/locales/es/template.json b/packages/i18n/src/locales/es/template.json index 4d33b1dcdeb..7f52a8a45bd 100644 --- a/packages/i18n/src/locales/es/template.json +++ b/packages/i18n/src/locales/es/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Plantillas", "description": "Ahorra un 80% del tiempo dedicado a crear proyectos, elementos de trabajo y páginas cuando utilizas plantillas.", + "new_project_template": "Nueva plantilla de proyecto", + "new_work_item_template": "Nueva plantilla de elemento de trabajo", + "new_page_template": "Nueva plantilla de página", "options": { "project": { "label": "Plantillas de proyecto" @@ -157,6 +160,14 @@ "required": "Al menos una palabra clave es obligatoria" } }, + "website": { + "label": "URL del sitio web", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL no válida", + "maxLength": "La URL debe tener menos de 800 caracteres" + } + }, "company_name": { "label": "Nombre de la empresa", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Dirección de correo electrónico no válida", - "required": "El correo electrónico de soporte es obligatorio", "maxLength": "El correo electrónico de soporte debe tener menos de 255 caracteres" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Aún no hay etiquetas. Crea etiquetas para ayudar a organizar y filtrar elementos de trabajo en tu proyecto." }, + "no_modules": { + "description": "Aún no hay módulos. Organiza el trabajo en subproyectos con líderes y responsables dedicados." + }, "no_work_items": { "description": "Aún no hay elementos de trabajo. Añade uno para estructurar tu trabajo mejor." }, diff --git a/packages/i18n/src/locales/es/tour.json b/packages/i18n/src/locales/es/tour.json index 22d3992b073..14852c98cbd 100644 --- a/packages/i18n/src/locales/es/tour.json +++ b/packages/i18n/src/locales/es/tour.json @@ -110,6 +110,12 @@ "description": "Un elemento de trabajo puede posponerse para revisarlo más tarde. Se moverá al final de tu lista de solicitudes abiertas." } }, + "mcp_connectors": { + "step_zero": { + "title": "Deja de cambiar de pestañas. Conecta tu mundo.", + "description": "Vincula GitHub y Slack para rastrear PRs y resumir chats directamente en Plane AI." + } + }, "navigation": { "modal": { "title": "Navegación, reimaginada", diff --git a/packages/i18n/src/locales/es/update.json b/packages/i18n/src/locales/es/update.json index 8be8fccd837..986ac85934a 100644 --- a/packages/i18n/src/locales/es/update.json +++ b/packages/i18n/src/locales/es/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "Progreso", + "since_last_update": "Desde la última actualización", + "comments": "{count, plural, one{# comentario} other{# comentarios}}" + }, "add_update": "Agregar actualización", "add_update_placeholder": "Escribe tu actualización aquí", "empty": { "title": "Aún no hay actualizaciones", "description": "Puedes ver las actualizaciones aquí." }, - "delete": { - "title": "Eliminar actualización", - "confirmation": "¿Estás seguro de querer eliminar esta actualización? Esta acción es irreversible.", - "success": { - "title": "Actualización eliminada", - "message": "La actualización se ha eliminado correctamente" - }, - "error": { - "title": "Actualización no eliminada", - "message": "La actualización no se pudo eliminar" - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "Progreso", - "since_last_update": "Desde la última actualización", - "comments": "{count, plural, one{# comentario} other{# comentarios}}" - }, "create": { "success": { "title": "Actualización creada", @@ -55,6 +43,18 @@ "message": "No se pudo crear la actualización" } }, + "delete": { + "title": "Eliminar actualización", + "confirmation": "¿Estás seguro de querer eliminar esta actualización? Esta acción es irreversible.", + "success": { + "title": "Actualización eliminada", + "message": "La actualización se ha eliminado correctamente" + }, + "error": { + "title": "Actualización no eliminada", + "message": "La actualización no se pudo eliminar" + } + }, "update": { "success": { "title": "Actualización actualizada", diff --git a/packages/i18n/src/locales/es/wiki.json b/packages/i18n/src/locales/es/wiki.json index b9616d21670..a7f8803b74a 100644 --- a/packages/i18n/src/locales/es/wiki.json +++ b/packages/i18n/src/locales/es/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "No se pudo crear la página o añadirla a la colección. Inténtalo de nuevo.", "collection_link_copied": "Enlace de la colección copiado al portapapeles." } + }, + "wiki": { + "upgrade_flow": { + "title": "Mejora para desbloquear Wiki", + "description": "Desbloquea páginas públicas, historial de versiones, páginas compartidas, colaboración en tiempo real y páginas del espacio de trabajo para wikis, documentación de la empresa y bases de conocimiento con Plane Pro.", + "upgrade_button": { + "text": "Mejorar" + }, + "learn_more_button": { + "text": "Más información" + }, + "download_button": { + "text": "Descargar datos", + "loading": "Descargando" + }, + "tabs": { + "nested_pages": "Páginas anidadas", + "add_embeds": "Agregar incrustaciones", + "publish_pages": "Publicar páginas", + "comments": "Comentarios" + } + }, + "nested_pages_download_banner": { + "title": "Las páginas anidadas requieren un plan de pago. Mejora para desbloquearlas." + } } } diff --git a/packages/i18n/src/locales/es/work-item-type.json b/packages/i18n/src/locales/es/work-item-type.json index 7a4f0a527dd..45182dc2ee3 100644 --- a/packages/i18n/src/locales/es/work-item-type.json +++ b/packages/i18n/src/locales/es/work-item-type.json @@ -3,11 +3,25 @@ "label": "Tipos de elementos de trabajo", "label_lowercase": "tipos de elementos de trabajo", "settings": { - "title": "Tipos de elementos de trabajo", + "description": "Personaliza y agrega tus propias propiedades para adaptarlo a las necesidades de tu equipo.", + "cant_delete_default_message": "No se puede eliminar este tipo de elemento de trabajo porque está establecido como el tipo predeterminado para este proyecto.", + "set_as_default": "Establecer como predeterminado", + "cant_set_default_inactive_message": "Activa este tipo antes de establecerlo como predeterminado", + "set_default_confirmation": { + "title": "Establecer como tipo de elemento de trabajo predeterminado", + "description": "Al establecer {name} como predeterminado, se importará a todos los proyectos de este espacio de trabajo. Todos los nuevos elementos de trabajo usarán este tipo de forma predeterminada.", + "confirm_button": "Establecer como predeterminado" + }, "properties": { "title": "Propiedades personalizadas del elemento de trabajo", + "description": "Crea y personaliza propiedades.", "tooltip": "Cada tipo de elemento de trabajo viene con un conjunto predeterminado de propiedades como Título, Descripción, Asignado, Estado, Prioridad, Fecha de inicio, Fecha de vencimiento, Module, Cycle, etc. También puedes personalizar y agregar tus propias propiedades para adaptarlo a las necesidades de tu equipo.", "add_button": "Agregar nueva propiedad", + "project": { + "add_button": { + "import_from_workspace": "Importar desde el espacio de trabajo" + } + }, "dropdown": { "label": "Tipo de propiedad", "placeholder": "Seleccionar tipo" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Crear nueva propiedad personalizada", + "update": "Actualizar propiedad personalizada" + }, "form": { "display_name": { "placeholder": "Título" @@ -213,9 +231,50 @@ "description": "Las nuevas propiedades que agregues para este tipo de elemento de trabajo aparecerán aquí." } }, + "types": { + "title": "Tipos", + "description": "Crea y personaliza tipos de elementos de trabajo con propiedades.", + "sort_options": { + "project_count": "Número de proyectos que forma parte" + }, + "filter_options": { + "show_active": "Mostrar activos", + "show_inactive": "Mostrar inactivos" + }, + "project": { + "add_button": { + "create_new": "Crear nuevo", + "import_from_workspace": "Importar desde el espacio de trabajo" + }, + "banner": { + "with_access": "Habilita los tipos de elementos de trabajo para importar tipos desde el nivel del espacio de trabajo", + "without_access": "Los tipos de elementos de trabajo están deshabilitados. Contacta al administrador del espacio de trabajo para habilitarlos en la configuración del espacio de trabajo." + } + } + }, + "linked_properties": { + "title": "Propiedades personalizadas", + "add_button": "Agregar propiedades", + "modal": { + "title": "Agregar propiedades", + "empty": { + "title": "No hay propiedades disponibles", + "description": "Todas las propiedades ya han sido vinculadas a este tipo." + } + }, + "unlink_confirmation": { + "title": "Desvincular propiedad", + "description": "Al desvincular esta propiedad se eliminarán permanentemente todos sus valores en cada elemento de trabajo que use este tipo. Esta acción no se puede deshacer.", + "input_label": "Escribe", + "input_label_suffix": "para continuar:", + "confirm": "Desvincular propiedad", + "loading": "Desvinculando" + } + }, "item_delete_confirmation": { "title": "Eliminar este tipo", "description": "La eliminación de tipos puede provocar la pérdida de datos existentes.", + "can_disable_warning": "¿Desea desactivar el tipo en su lugar?", "primary_button": "Sí, eliminarlo", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "No se puede eliminar el tipo de elemento de trabajo predeterminado", "cannot_delete_work_item_type_with_associated_work_items": "No se puede eliminar el tipo de elemento de trabajo con elementos de trabajo asociados" - }, - "can_disable_warning": "¿Desea desactivar el tipo en su lugar?" - }, - "cant_delete_default_message": "No se puede eliminar este tipo de elemento de trabajo porque está establecido como el tipo predeterminado para este proyecto.", - "set_as_default": "Establecer como predeterminado", - "cant_set_default_inactive_message": "Activa este tipo antes de establecerlo como predeterminado", - "set_default_confirmation": { - "title": "Establecer como tipo de elemento de trabajo predeterminado", - "description": "Al establecer {name} como predeterminado, se importará a todos los proyectos de este espacio de trabajo. Todos los nuevos elementos de trabajo usarán este tipo de forma predeterminada.", - "confirm_button": "Establecer como predeterminado" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "¡Error!", "message": { + "default": "Error al crear el tipo de elemento de trabajo. ¡Por favor intente nuevamente!", "conflict": "El tipo {name} ya existe. Elige un nombre diferente." } } @@ -269,6 +320,7 @@ "error": { "title": "¡Error!", "message": { + "default": "Error al actualizar el tipo de elemento de trabajo. ¡Por favor intente nuevamente!", "conflict": "El tipo {name} ya existe. Elige un nombre diferente." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "¡Error de validación!", + "title": "Guardar romperá los enlaces existentes", "content": { "intro": "El tipo de elemento de trabajo {workItemTypeName} tiene:", - "parent_items": "{count, plural, one {elemento de trabajo padre} other {elementos de trabajo padre}}", + "parent_items": "{count, plural, one {Se eliminará # enlace principal} other {Se eliminarán # enlaces principales}}.", "child_items": "{count, plural, one {subelemento de trabajo} other {subelementos de trabajo}}", "parent_line_suffix_when_also_children": ", y ", "footer": "Este cambio eliminará las relaciones padre-hijo de los elementos de trabajo existentes del tipo {workItemTypeName}." }, "confirm_input": { - "label": "Escribe «Confirmar» para continuar.", - "placeholder": "Confirmar" + "label": "Escribe «confirmar» para continuar.", + "placeholder": "confirmar" }, "error_toast": { "title": "¡Error!", - "message": "No se pudo romper la jerarquía. Inténtalo de nuevo." + "message": "No se pudieron desvincular los enlaces ni guardar. Inténtelo de nuevo." }, "confirm_button": { - "loading": "Aplicando", - "default": "Aplicar y desvincular" + "loading": "Guardando", + "default": "Guardar de todos modos" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/es/work-item.json b/packages/i18n/src/locales/es/work-item.json index 8d217e0fe07..738fff249c7 100644 --- a/packages/i18n/src/locales/es/work-item.json +++ b/packages/i18n/src/locales/es/work-item.json @@ -20,6 +20,7 @@ "due_date": "Agregar fecha de vencimiento", "parent": "Agregar elemento de trabajo padre", "sub_issue": "Agregar sub-elemento de trabajo", + "dependency": "Agregar dependencia", "relation": "Agregar relación", "link": "Agregar enlace", "existing": "Agregar elemento de trabajo existente" @@ -110,6 +111,43 @@ "copy_link": { "success": "Enlace del comentario copiado al portapapeles", "error": "Error al copiar el enlace del comentario. Inténtelo de nuevo más tarde." + }, + "replies": { + "create": { + "submit_button": "Agregar respuesta", + "placeholder": "Agregar respuesta" + }, + "toast": { + "fetch": { + "error": { + "message": "Error al obtener las respuestas" + } + }, + "create": { + "success": { + "message": "Respuesta creada correctamente" + }, + "error": { + "message": "Error al crear la respuesta" + } + }, + "update": { + "success": { + "message": "Respuesta actualizada correctamente" + }, + "error": { + "message": "Error al actualizar la respuesta" + } + }, + "delete": { + "success": { + "message": "Respuesta eliminada correctamente" + }, + "error": { + "message": "Error al eliminar la respuesta" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Deseleccionar todo" }, "open_in_full_screen": "Abrir elemento de trabajo en pantalla completa", + "duplicate": { + "modal": { + "title": "Hacer una copia a otro proyecto", + "description1": "Esto crea una copia del elemento de trabajo.", + "description2": "Todos los datos de propiedades se eliminarán al duplicar.", + "placeholder": "Selecciona un proyecto" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Elemento de trabajo duplicado correctamente" + }, + "error": { + "message": "Error al duplicar el elemento de trabajo" + } + } + }, + "pages": { + "link_pages": "Enlazar páginas", + "show_wiki_pages": "Mostrar páginas de wiki", + "link_pages_to": "Enlazar páginas a", + "linked_pages": "Páginas enlazadas", + "no_description": "Esta página está vacía. Escribe algo aquí y véalo como este marcador de posición", + "toasts": { + "link": { + "success": { + "title": "Páginas actualizadas", + "message": "Páginas actualizadas correctamente" + }, + "error": { + "title": "Error al actualizar páginas", + "message": "Error al actualizar páginas" + } + }, + "remove": { + "success": { + "title": "Página eliminada", + "message": "Página eliminada correctamente" + }, + "error": { + "title": "Error al eliminar página", + "message": "Error al eliminar página" + } + } + } + }, "vote": { "click_to_upvote": "Haz clic para votar a favor", "click_to_downvote": "Haz clic para votar en contra", @@ -241,54 +326,6 @@ "title": "No se pueden actualizar elementos de trabajo", "message": "El cambio de estado no está permitido para algunos elementos de trabajo. Asegúrese de que el cambio de estado esté permitido." } - }, - "workflows": { - "toggle": { - "title": "Habilitar flujos de trabajo", - "description": "Configura flujos de trabajo para controlar el movimiento de los elementos de trabajo", - "no_states_tooltip": "No hay estados agregados al flujo de trabajo.", - "toast": { - "loading": { - "enabling": "Habilitando flujos de trabajo", - "disabling": "Deshabilitando flujos de trabajo" - }, - "success": { - "title": "¡Éxito!", - "message": "Los flujos de trabajo se habilitaron correctamente." - }, - "error": { - "title": "¡Error!", - "message": "No se pudieron habilitar los flujos de trabajo. Inténtalo de nuevo." - } - } - }, - "heading": "Flujos de trabajo", - "description": "Automatiza las transiciones de los elementos de trabajo y define reglas para controlar cómo las tareas avanzan por el flujo de tu proyecto.", - "add_button": "Agregar nuevo flujo de trabajo", - "search": "Buscar flujos de trabajo", - "detail": { - "define": "Definir flujo de trabajo", - "add_states": "Agregar estados", - "unmapped_states": { - "title": "Se detectaron estados no asignados", - "description": "Algunos elementos de trabajo de los tipos seleccionados se encuentran actualmente en estados que no existen en este flujo de trabajo.", - "note": "Si habilitas este flujo de trabajo, esos elementos se moverán automáticamente al estado inicial de este flujo de trabajo.", - "label": "Estados faltantes", - "tooltip": "Algunos elementos de trabajo están en estados que no están asignados a este flujo de trabajo. Abre el flujo de trabajo para revisarlo." - } - }, - "select_states": { - "empty_state": { - "title": "Todos los estados están en uso", - "description": "Todos los estados definidos para este proyecto ya están presentes en tu flujo de trabajo actual." - } - }, - "default_footer": { - "fallback_message": "Este flujo de trabajo se aplica a cualquier tipo de elemento de trabajo que no esté asignado a un flujo de trabajo." - }, - "create": { - "heading": "Crear nuevo flujo de trabajo" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/es/workspace-settings.json b/packages/i18n/src/locales/es/workspace-settings.json index 962ab4c7e16..f498c6f309a 100644 --- a/packages/i18n/src/locales/es/workspace-settings.json +++ b/packages/i18n/src/locales/es/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Facturación y Planes", + "description": "Elige tu plan, gestiona las suscripciones y actualiza fácilmente a medida que crecen tus necesidades.", "title": "Facturación y Planes", "current_plan": "Plan actual", "free_plan": "Actualmente estás usando el plan gratuito", "view_plans": "Ver planes" }, "exports": { + "heading": "Exportaciones", + "description": "Exporta los datos de tu proyecto en varios formatos y accede a tu historial de exportaciones con enlaces de descarga.", "title": "Exportaciones", "exporting": "Exportando", "previous_exports": "Exportaciones anteriores", "export_separate_files": "Exportar los datos en archivos separados", + "exporting_projects": "Exportando proyecto", + "format": "Formato", "filters_info": "Aplica filtros para exportar elementos de trabajo específicos según tus criterios.", "modal": { "title": "Exportar a", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooks", + "description": "Automatiza las notificaciones a servicios externos cuando ocurren eventos del proyecto.", "title": "Webhooks", "add_webhook": "Agregar webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integraciones", + "heading": "Integraciones", + "description": "Conéctate con herramientas y servicios populares para sincronizar tu trabajo en todo tu ecosistema de flujo de trabajo.", "page_title": "Trabaja con tus datos de Plane en aplicaciones disponibles o en las tuyas propias.", "page_description": "Ver todas las integraciones en uso por este espacio de trabajo o por ti." }, "imports": { - "title": "Importaciones" + "title": "Importaciones", + "heading": "Importaciones", + "description": "Conecta e importa datos desde tus herramientas de gestión de proyectos existentes para optimizar la integración de tu flujo de trabajo." }, "worklogs": { - "title": "Registros de trabajo" + "title": "Registros de trabajo", + "heading": "Registros de trabajo", + "description": "Descarga los registros de trabajo, también conocidos como hojas de tiempo, de cualquier persona en cualquier proyecto." }, "group_syncing": { "title": "Sincronización de grupos", @@ -242,7 +256,10 @@ "description": "Configure su dominio y habilite el inicio de sesión único" }, "project_states": { - "title": "Estados del proyecto" + "title": "Estados del proyecto", + "heading": "Ver resumen de progreso de todos los proyectos.", + "description": "Los Estados de proyecto son una función exclusiva de Plane para rastrear el progreso de todos tus proyectos por cualquier propiedad del proyecto.", + "go_to_settings": "Ir a configuración" }, "projects": { "title": "Proyectos", @@ -252,6 +269,16 @@ "labels": "Etiquetas del proyecto" } }, + "templates": { + "title": "Plantillas", + "heading": "Plantillas", + "description": "Ahorra el 80 % del tiempo dedicado a crear proyectos, elementos de trabajo y páginas cuando usas plantillas." + }, + "relations": { + "title": "Relaciones", + "heading": "Relaciones", + "description": "Crea y gestiona tipos de relaciones que conectan elementos de trabajo en tu espacio de trabajo." + }, "cancel_trial": { "title": "Cancela primero tu periodo de prueba.", "description": "Tienes un periodo de prueba activo en uno de nuestros planes de pago. Por favor, cancélalo primero para continuar.", @@ -263,6 +290,7 @@ "cancel_error_message": "Por favor, inténtalo de nuevo." }, "applications": { + "internal": "Interno", "title": "Aplicaciones", "applicationId_copied": "ID de aplicación copiado al portapapeles", "clientId_copied": "ID de cliente copiado al portapapeles", @@ -271,10 +299,61 @@ "your_apps": "Tus aplicaciones", "connect": "Conectar", "connected": "Conectado", + "disconnect": "Desconectar", "install": "Instalar", "installed": "Instalado", "configure": "Configurar", "app_available": "Has hecho que esta aplicación esté disponible para usar con un espacio de trabajo de Plane", + "app_credentials_regenrated": { + "title": "Las credenciales de la aplicación se han regenerado correctamente", + "description": "Reemplace el secreto del cliente en todos los lugares donde se utilice. El secreto anterior ya no es válido." + }, + "app_created": { + "title": "La aplicación se creó correctamente", + "description": "Utilice las credenciales para instalar la aplicación en un espacio de trabajo de Plane" + }, + "installed_apps": "Aplicaciones instaladas", + "all_apps": "Todas las aplicaciones", + "internal_apps": "Aplicaciones internas", + "app_name_title": "¿Cómo llamarás a esta aplicación?", + "app_description_title": { + "label": "Descripción larga", + "placeholder": "Escriba una descripción larga para el mercado. Presione '/' para ver los comandos." + }, + "authorization_grant_type": { + "title": "Tipo de conexión", + "description": "Elija si su aplicación debe instalarse una vez para el espacio de trabajo o permitir que cada usuario conecte su propia cuenta" + }, + "website": { + "title": "Sitio web", + "description": "Enlace al sitio web de su aplicación.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Creador de aplicaciones", + "description": "La persona u organización que crea la aplicación." + }, + "app_maker_error": "El creador de la aplicación es obligatorio", + "setup_url": { + "label": "URL de configuración", + "description": "Los usuarios serán redirigidos a esta URL cuando instalen la aplicación.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL del webhook", + "description": "Aquí es donde enviaremos eventos y actualizaciones de webhook desde los espacios de trabajo donde está instalada su aplicación.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Secreto del webhook", + "description": "Secreto utilizado para verificar las solicitudes entrantes del webhook.", + "placeholder": "Ingresa una clave secreta aleatoria" + }, + "redirect_uris": { + "label": "URIs de redirección (separadas por espacios)", + "description": "Los usuarios serán redirigidos a esta ruta después de haberse autenticado con Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Conecta un espacio de trabajo de Plane para comenzar a usarla", "client_id_and_secret": "ID y Secreto de Cliente", "client_id_and_secret_description": "Copia y guarda esta clave secreta. No podrás ver esta clave después de hacer clic en Cerrar.", @@ -286,23 +365,13 @@ "slug_already_exists": "El slug ya existe", "failed_to_create_application": "Error al crear la aplicación", "upload_logo": "Subir Logo", - "app_name_title": "¿Cómo llamarás a esta aplicación?", "app_name_error": "El nombre de la aplicación es obligatorio", "app_short_description_title": "Dale una breve descripción a esta aplicación", "app_short_description_error": "La descripción corta de la aplicación es obligatoria", - "app_description_title": { - "label": "Descripción larga", - "placeholder": "Escriba una descripción larga para el mercado. Presione '/' para ver los comandos." - }, - "authorization_grant_type": { - "title": "Tipo de conexión", - "description": "Elija si su aplicación debe instalarse una vez para el espacio de trabajo o permitir que cada usuario conecte su propia cuenta" - }, "app_description_error": "La descripción de la aplicación es obligatoria", "app_slug_title": "Slug de la aplicación", "app_slug_error": "El slug de la aplicación es obligatorio", - "app_maker_title": "Creador de la aplicación", - "app_maker_error": "El creador de la aplicación es obligatorio", + "invalid_website_error": "Sitio web inválido", "webhook_url_title": "URL del Webhook", "webhook_url_error": "La URL del webhook es obligatoria", "invalid_webhook_url_error": "URL del webhook inválida", @@ -364,7 +433,6 @@ "video_url_title": "URL del Video", "video_url_error": "El URL del Video es requerido", "invalid_video_url_error": "URL del Video inválida", - "setup_url_title": "URL de Configuración", "setup_url_error": "La URL de Configuración es requerida", "invalid_setup_url_error": "URL de Configuración inválida", "configuration_url_title": "URL de Configuración", @@ -380,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Archivo inválido o excede el límite de tamaño ({size} MB)", "uploading": "Subiendo...", "upload_and_save": "Subir y guardar", - "app_credentials_regenrated": { - "title": "Las credenciales de la aplicación se han regenerado correctamente", - "description": "Reemplace el secreto del cliente en todos los lugares donde se utilice. El secreto anterior ya no es válido." - }, - "app_created": { - "title": "La aplicación se creó correctamente", - "description": "Utilice las credenciales para instalar la aplicación en un espacio de trabajo de Plane" - }, - "installed_apps": "Aplicaciones instaladas", - "all_apps": "Todas las aplicaciones", - "internal_apps": "Aplicaciones internas", - "website": { - "title": "Sitio web", - "description": "Enlace al sitio web de su aplicación.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Creador de aplicaciones", - "description": "La persona u organización que crea la aplicación." - }, - "setup_url": { - "label": "URL de configuración", - "description": "Los usuarios serán redirigidos a esta URL cuando instalen la aplicación.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL del webhook", - "description": "Aquí es donde enviaremos eventos y actualizaciones de webhook desde los espacios de trabajo donde está instalada su aplicación.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URIs de redirección (separadas por espacios)", - "description": "Los usuarios serán redirigidos a esta ruta después de haberse autenticado con Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Solicitud de instalación", "app_consent_no_access_description": "Esta aplicación solo se puede instalar después de que un administrador del espacio de trabajo la instale. Contacta con el administrador de tu espacio de trabajo para continuar.", + "app_consent_unapproved_title": "Esta aplicación aún no ha sido revisada ni aprobada por Plane.", + "app_consent_unapproved_description": "Asegúrate de confiar en esta aplicación antes de conectarla a tu espacio de trabajo.", + "go_to_app": "Ir a la aplicación", "enable_app_mentions": "Habilitar menciones de la aplicación", "enable_app_mentions_tooltip": "Cuando esto está habilitado, los usuarios pueden mencionar o asignar elementos de trabajo a esta aplicación.", "scopes": "Ámbitos", @@ -435,13 +472,18 @@ "profile": "Acceso a la información del perfil de usuario", "agents": "Acceso a agentes y todas las entidades relacionadas con agentes", "assets": "Acceso a activos y todas las entidades relacionadas con activos" - }, - "internal": "Interno" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Ve tu trabajo obtener más inteligente y más rápido con IA que está conectada de forma nativa a tu trabajo y base de conocimientos." + }, + "runners": { + "title": "Plane Runner", + "heading": "Scripts", + "new_script": "Nuevo script", + "description": "Automatiza tus flujos de trabajo con scripts personalizados y reglas de automatización." } }, "empty_state": { diff --git a/packages/i18n/src/locales/es/workspace.json b/packages/i18n/src/locales/es/workspace.json index 6d3815f6f9c..f671d0b145a 100644 --- a/packages/i18n/src/locales/es/workspace.json +++ b/packages/i18n/src/locales/es/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Alcance y Demanda", "custom": "Análisis Personalizado" }, + "total": "Total de {entity}", + "started_work_items": "{entity} iniciados", + "backlog_work_items": "{entity} en backlog", + "un_started_work_items": "{entity} no iniciados", + "completed_work_items": "{entity} completados", + "project_insights": "Información del proyecto", + "summary_of_projects": "Resumen de proyectos", + "all_projects": "Todos los proyectos", + "trend_on_charts": "Tendencia en gráficos", + "active_projects": "Proyectos activos", + "customized_insights": "Información personalizada", + "created_vs_resolved": "Creado vs Resuelto", "empty_state": { - "customized_insights": { - "description": "Los elementos de trabajo asignados a ti, desglosados por estado, aparecerán aquí.", - "title": "Aún no hay datos" + "project_insights": { + "title": "Aún no hay datos", + "description": "Los elementos de trabajo asignados a ti, desglosados por estado, aparecerán aquí." }, "created_vs_resolved": { - "description": "Los elementos de trabajo creados y resueltos con el tiempo aparecerán aquí.", - "title": "Aún no hay datos" + "title": "Aún no hay datos", + "description": "Los elementos de trabajo creados y resueltos con el tiempo aparecerán aquí." }, - "project_insights": { + "customized_insights": { "title": "Aún no hay datos", "description": "Los elementos de trabajo asignados a ti, desglosados por estado, aparecerán aquí." }, @@ -132,29 +144,11 @@ "description": "Los análisis de tendencias de entrada aparecerán aquí. Agrega elementos de trabajo a la entrada para comenzar a rastrear tendencias." } }, - "created_vs_resolved": "Creado vs Resuelto", - "customized_insights": "Información personalizada", - "backlog_work_items": "{entity} en backlog", - "active_projects": "Proyectos activos", - "trend_on_charts": "Tendencia en gráficos", - "all_projects": "Todos los proyectos", - "summary_of_projects": "Resumen de proyectos", - "project_insights": "Información del proyecto", - "started_work_items": "{entity} iniciados", - "total_work_items": "Total de {entity}", - "total_projects": "Total de proyectos", - "total_admins": "Total de administradores", - "total_users": "Total de usuarios", - "total_intake": "Ingreso total", - "un_started_work_items": "{entity} no iniciados", - "total_guests": "Total de invitados", - "completed_work_items": "{entity} completados", - "total": "Total de {entity}", + "upgrade_to_plan": "Mejora a {plan} para desbloquear {tab}", + "workitem_resolved_vs_pending": "Elementos de trabajo resueltos vs pendientes", "projects_by_status": "Proyectos por estado", "active_users": "Usuarios activos", - "intake_trends": "Tendencias de admisión", - "workitem_resolved_vs_pending": "Elementos de trabajo resueltos vs pendientes", - "upgrade_to_plan": "Mejora a {plan} para desbloquear {tab}" + "intake_trends": "Tendencias de admisión" }, "workspace_projects": { "label": "{count, plural, one {Proyecto} other {Proyectos}}", @@ -162,6 +156,7 @@ "label": "Agregar Proyecto" }, "network": { + "label": "Red", "private": { "title": "Privado", "description": "Accesible solo por invitación" @@ -195,7 +190,8 @@ "archived_projects": "Archivados" }, "common": { - "months_count": "{months, plural, one{# mes} other{# meses}}" + "months_count": "{months, plural, one{# mes} other{# meses}}", + "days_count": "{days, plural, one{# día} other{# días}}" }, "empty_state": { "general": { @@ -316,6 +312,10 @@ "archived": { "title": "Aún no hay Pages archivadas", "description": "Archiva las Pages que no estén en tu radar. Accede a ellas aquí cuando las necesites." + }, + "shared": { + "title": "Aún no hay páginas compartidas", + "description": "Las páginas que otros han compartido contigo aparecerán aquí." } } }, diff --git a/packages/i18n/src/locales/fr/auth.json b/packages/i18n/src/locales/fr/auth.json index a1ce18fdeaa..031cffea656 100644 --- a/packages/i18n/src/locales/fr/auth.json +++ b/packages/i18n/src/locales/fr/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-mail", - "placeholder": "nom@entreprise.com", - "errors": { - "required": "L’e-mail est requis", - "invalid": "L’e-mail est invalide" - } - }, - "password": { - "label": "Mot de passe", - "set_password": "Définir un mot de passe", - "placeholder": "Entrer le mot de passe", - "confirm_password": { - "label": "Confirmer le mot de passe", - "placeholder": "Confirmer le mot de passe" - }, - "current_password": { - "label": "Mot de passe actuel" - }, - "new_password": { - "label": "Nouveau mot de passe", - "placeholder": "Entrer le nouveau mot de passe" - }, - "change_password": { - "label": { - "default": "Changer le mot de passe", - "submitting": "Changement du mot de passe" - } - }, - "errors": { - "match": "Les mots de passe ne correspondent pas", - "empty": "Veuillez entrer votre mot de passe", - "length": "Le mot de passe doit contenir plus de 8 caractères", - "strength": { - "weak": "Le mot de passe est faible", - "strong": "Le mot de passe est fort" - } - }, - "submit": "Définir le mot de passe", - "toast": { - "change_password": { - "success": { - "title": "Succès !", - "message": "Mot de passe changé avec succès." - }, - "error": { - "title": "Erreur !", - "message": "Une erreur s'est produite. Veuillez réessayer." - } - } - } - }, - "unique_code": { - "label": "Code unique", - "placeholder": "123456", - "paste_code": "Collez le code envoyé à votre e-mail", - "requesting_new_code": "Demande d’un nouveau code", - "sending_code": "Envoi du code" - }, - "already_have_an_account": "Vous avez déjà un compte ?", - "login": "Se connecter", - "create_account": "Créer un compte", - "new_to_plane": "Nouveau sur Plane ?", - "back_to_sign_in": "Retour à la connexion", - "resend_in": "Renvoyer dans {seconds} secondes", - "sign_in_with_unique_code": "Se connecter avec un code unique", - "forgot_password": "Mot de passe oublié ?", - "username": { - "label": "Nom d'utilisateur", - "placeholder": "Entrez votre nom d'utilisateur" - } - }, - "sign_up": { - "header": { - "label": "Créez un compte pour commencer à gérer le travail avec votre équipe.", - "step": { - "email": { - "header": "S’inscrire", - "sub_header": "" - }, - "password": { - "header": "S’inscrire", - "sub_header": "Inscrivez-vous en utilisant une combinaison e-mail-mot de passe." - }, - "unique_code": { - "header": "S’inscrire", - "sub_header": "Inscrivez-vous en utilisant un code unique envoyé à l’adresse e-mail ci-dessus." - } - } - }, - "errors": { - "password": { - "strength": "Essayez de définir un mot de passe fort pour continuer" - } - } - }, - "sign_in": { - "header": { - "label": "Connectez-vous pour commencer à gérer le travail avec votre équipe.", - "step": { - "email": { - "header": "Se connecter ou s’inscrire", - "sub_header": "" - }, - "password": { - "header": "Se connecter ou s’inscrire", - "sub_header": "Utilisez votre combinaison e-mail - mot de passe pour vous connecter." - }, - "unique_code": { - "header": "Se connecter ou s’inscrire", - "sub_header": "Connectez-vous en utilisant un code unique envoyé à l’adresse e-mail ci-dessus." - } - } - } - }, - "forgot_password": { - "title": "Réinitialiser votre mot de passe", - "description": "Entrez l’adresse e-mail vérifiée de votre compte utilisateur et nous vous enverrons un lien de réinitialisation du mot de passe.", - "email_sent": "Nous avons envoyé le lien de réinitialisation à votre adresse e-mail", - "send_reset_link": "Envoyer le lien de réinitialisation", - "errors": { - "smtp_not_enabled": "Nous constatons que votre administrateur n’a pas activé le SMTP, nous ne pourrons pas envoyer de lien de réinitialisation du mot de passe" - }, - "toast": { - "success": { - "title": "E-mail envoyé", - "message": "Consultez votre boîte de réception pour obtenir un lien de réinitialisation de votre mot de passe. S’il n’apparaît pas dans quelques minutes, vérifiez votre dossier spam." - }, - "error": { - "title": "Erreur !", - "message": "Une erreur s’est produite. Veuillez réessayer." - } - } - }, - "reset_password": { - "title": "Définir un nouveau mot de passe", - "description": "Sécurisez votre compte avec un mot de passe fort" - }, - "set_password": { - "title": "Sécurisez votre compte", - "description": "La définition d’un mot de passe vous permet de vous connecter en toute sécurité" - }, - "sign_out": { - "toast": { - "error": { - "title": "Erreur !", - "message": "Échec de la déconnexion. Veuillez réessayer." - } - } - }, - "ldap": { - "header": { - "label": "Continuer avec {ldapProviderName}", - "sub_header": "Entrez vos identifiants {ldapProviderName}" - } - } - }, "sso": { "header": "Identité", "description": "Configurez votre domaine pour accéder aux fonctionnalités de sécurité, y compris l'authentification unique.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-mail", + "placeholder": "nom@entreprise.com", + "errors": { + "required": "L’e-mail est requis", + "invalid": "L’e-mail est invalide" + } + }, + "password": { + "label": "Mot de passe", + "set_password": "Définir un mot de passe", + "placeholder": "Entrer le mot de passe", + "confirm_password": { + "label": "Confirmer le mot de passe", + "placeholder": "Confirmer le mot de passe" + }, + "current_password": { + "label": "Mot de passe actuel" + }, + "new_password": { + "label": "Nouveau mot de passe", + "placeholder": "Entrer le nouveau mot de passe" + }, + "change_password": { + "label": { + "default": "Changer le mot de passe", + "submitting": "Changement du mot de passe" + } + }, + "errors": { + "match": "Les mots de passe ne correspondent pas", + "empty": "Veuillez entrer votre mot de passe", + "length": "Le mot de passe doit contenir plus de 8 caractères", + "strength": { + "weak": "Le mot de passe est faible", + "strong": "Le mot de passe est fort" + } + }, + "submit": "Définir le mot de passe", + "toast": { + "change_password": { + "success": { + "title": "Succès !", + "message": "Mot de passe changé avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Une erreur s'est produite. Veuillez réessayer." + } + } + } + }, + "unique_code": { + "label": "Code unique", + "placeholder": "123456", + "paste_code": "Collez le code envoyé à votre e-mail", + "requesting_new_code": "Demande d’un nouveau code", + "sending_code": "Envoi du code" + }, + "already_have_an_account": "Vous avez déjà un compte ?", + "login": "Se connecter", + "create_account": "Créer un compte", + "new_to_plane": "Nouveau sur Plane ?", + "back_to_sign_in": "Retour à la connexion", + "resend_in": "Renvoyer dans {seconds} secondes", + "sign_in_with_unique_code": "Se connecter avec un code unique", + "forgot_password": "Mot de passe oublié ?", + "username": { + "label": "Nom d'utilisateur", + "placeholder": "Entrez votre nom d'utilisateur" + } + }, + "sign_up": { + "header": { + "label": "Créez un compte pour commencer à gérer le travail avec votre équipe.", + "step": { + "email": { + "header": "S’inscrire", + "sub_header": "" + }, + "password": { + "header": "S’inscrire", + "sub_header": "Inscrivez-vous en utilisant une combinaison e-mail-mot de passe." + }, + "unique_code": { + "header": "S’inscrire", + "sub_header": "Inscrivez-vous en utilisant un code unique envoyé à l’adresse e-mail ci-dessus." + } + } + }, + "errors": { + "password": { + "strength": "Essayez de définir un mot de passe fort pour continuer" + } + } + }, + "sign_in": { + "header": { + "label": "Connectez-vous pour commencer à gérer le travail avec votre équipe.", + "step": { + "email": { + "header": "Se connecter ou s’inscrire", + "sub_header": "" + }, + "password": { + "header": "Se connecter ou s’inscrire", + "sub_header": "Utilisez votre combinaison e-mail - mot de passe pour vous connecter." + }, + "unique_code": { + "header": "Se connecter ou s’inscrire", + "sub_header": "Connectez-vous en utilisant un code unique envoyé à l’adresse e-mail ci-dessus." + } + } + } + }, + "forgot_password": { + "title": "Réinitialiser votre mot de passe", + "description": "Entrez l’adresse e-mail vérifiée de votre compte utilisateur et nous vous enverrons un lien de réinitialisation du mot de passe.", + "email_sent": "Nous avons envoyé le lien de réinitialisation à votre adresse e-mail", + "send_reset_link": "Envoyer le lien de réinitialisation", + "errors": { + "smtp_not_enabled": "Nous constatons que votre administrateur n’a pas activé le SMTP, nous ne pourrons pas envoyer de lien de réinitialisation du mot de passe" + }, + "toast": { + "success": { + "title": "E-mail envoyé", + "message": "Consultez votre boîte de réception pour obtenir un lien de réinitialisation de votre mot de passe. S’il n’apparaît pas dans quelques minutes, vérifiez votre dossier spam." + }, + "error": { + "title": "Erreur !", + "message": "Une erreur s’est produite. Veuillez réessayer." + } + } + }, + "reset_password": { + "title": "Définir un nouveau mot de passe", + "description": "Sécurisez votre compte avec un mot de passe fort" + }, + "set_password": { + "title": "Sécurisez votre compte", + "description": "La définition d’un mot de passe vous permet de vous connecter en toute sécurité" + }, + "sign_out": { + "toast": { + "error": { + "title": "Erreur !", + "message": "Échec de la déconnexion. Veuillez réessayer." + } + } + }, + "ldap": { + "header": { + "label": "Continuer avec {ldapProviderName}", + "sub_header": "Entrez vos identifiants {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/fr/automation.json b/packages/i18n/src/locales/fr/automation.json index 408f8a774f3..5343f12b2a0 100644 --- a/packages/i18n/src/locales/fr/automation.json +++ b/packages/i18n/src/locales/fr/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Retour", "next": "Ajouter une action" + }, + "warning": { + "disabled_trigger_switching": "Vous ne pouvez pas modifier le type de déclencheur une fois qu’il a été créé" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Sélectionnez une option", "handler_name": { "add_comment": "Ajouter un commentaire", - "change_property": "Modifier la propriété" + "change_property": "Modifier la propriété", + "run_script": "Exécuter un script" }, "configuration": { "label": "Configuration", @@ -89,6 +93,9 @@ "comment_block": { "title": "Ajouter un commentaire" }, + "run_script_block": { + "title": "Exécuter un script" + }, "change_property_block": { "title": "Modifier la propriété" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Titre de l'automatisation", + "scope": "Portée", + "projects": "Projets", "last_run_on": "Dernière exécution le", "created_on": "Créé le", "last_updated_on": "Dernière mise à jour le", @@ -230,6 +239,35 @@ "description": "Les automatisations sont un moyen d'automatiser les tâches dans votre projet.", "sub_description": "Récupérez 80% de votre temps administratif lorsque vous utilisez les Automatisations." } + }, + "global_automations": { + "project_select": { + "label": "Sélectionnez les projets sur lesquels exécuter cette automatisation", + "all_projects": { + "label": "Tous les projets", + "description": "L’automatisation s’exécutera pour tous les projets de l’espace de travail." + }, + "select_projects": { + "label": "Sélectionner des projets", + "description": "L’automatisation s’exécutera pour les projets sélectionnés dans l’espace de travail.", + "placeholder": "Sélectionner des projets" + } + }, + "settings": { + "sidebar_label": "Automatisations", + "title": "Automatisations", + "description": "Standardisez les processus dans votre espace de travail grâce aux automatisations globales." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Projet", + "multiple": "Plusieurs", + "all": "Tous" + } + } + } } } } diff --git a/packages/i18n/src/locales/fr/common.json b/packages/i18n/src/locales/fr/common.json index 538de075141..a94ab8aba2d 100644 --- a/packages/i18n/src/locales/fr/common.json +++ b/packages/i18n/src/locales/fr/common.json @@ -17,6 +17,7 @@ "no": "Non", "ok": "OK", "name": "Nom", + "unknown_user": "Utilisateur inconnu", "description": "Description", "search": "Rechercher", "add_member": "Ajouter un membre", @@ -56,7 +57,8 @@ "no_worklogs": "Aucun journal de travail pour l'instant", "no_history": "Aucun historique pour l'instant" }, - "appearance": "Apparence", + "preferences": "Préférences", + "language_and_time": "Langue et heure", "notifications": "Notifications", "workspaces": "Espaces de travail", "create_workspace": "Créer un espace de travail", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Une erreur s’est produite. Veuillez réessayer.", "load_more": "Charger davantage", "select_or_customize_your_interface_color_scheme": "Sélectionnez ou personnalisez votre palette de couleurs de l’interface.", + "timezone_setting": "Paramètre de fuseau horaire actuel.", + "language_setting": "Choisissez la langue utilisée dans l’interface utilisateur.", + "settings_moved_to_preferences": "Les paramètres de fuseau horaire et de langue ont été déplacés dans les préférences.", + "go_to_preferences": "Aller aux préférences", "select_the_cursor_motion_style_that_feels_right_for_you": "Sélectionnez le style de mouvement du curseur qui vous convient le mieux.", "theme": "Thème", "smooth_cursor": "Curseur fluide", @@ -163,6 +169,7 @@ "project_created_successfully": "Projet créé avec succès", "project_created_successfully_description": "Projet créé avec succès. Vous pouvez maintenant commencer à ajouter des éléments de travail.", "project_name_already_taken": "Le nom du projet est déjà pris.", + "project_name_cannot_contain_special_characters": "Le nom du projet ne peut pas contenir de caractères spéciaux.", "project_identifier_already_taken": "L’identifiant du projet est déjà pris.", "project_cover_image_alt": "Image de couverture du projet", "name_is_required": "Le nom est requis", @@ -207,6 +214,7 @@ "issues": "Éléments de travail", "cycles": "Cycles", "modules": "Modules", + "pages": "Pages", "intake": "Intake", "renew": "Renouveler", "preview": "Aperçu", @@ -298,6 +306,7 @@ "start_date": "Date de début", "end_date": "Date de fin", "due_date": "Date d’échéance", + "target_date": "Date cible", "estimate": "Estimation", "change_parent_issue": "Changer l’élément de travail parent", "remove_parent_issue": "Supprimer l’élément de travail parent", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Le nouveau mot de passe doit être différent du mot de passe précédent", "edited": "Modifié", "bot": "Bot", + "settings_description": "Gérez les préférences de votre compte, de votre espace de travail et de vos projets au même endroit. Changez d’onglet pour configurer facilement.", + "back_to_workspace": "Retour à l’espace de travail", "upgrade_request": "Demandez à l'administrateur de l'espace de travail de mettre à niveau.", "copied_to_clipboard": "Copié dans le presse-papiers", "copied_to_clipboard_description": "L'URL a été copiée avec succès dans votre presse-papiers", @@ -422,6 +433,9 @@ "modules": "Modules", "labels": "Étiquettes", "label": "Étiquette", + "admins": "Administrateurs", + "users": "Utilisateurs", + "guests": "Invités", "assignees": "Acteurs", "assignee": "Acteur", "created_by": "Créé par", @@ -451,6 +465,8 @@ "work_item": "Élément de travail", "work_items": "Éléments de travail", "sub_work_item": "Sous-élément de travail", + "views": "Vues", + "pages": "Pages", "add": "Ajouter", "warning": "Avertissement", "updating": "Mise à jour", @@ -496,7 +512,7 @@ "workspace_level": "Niveau espace de travail", "order_by": { "label": "Trier par", - "manual": "Manuel", + "manual": "Manuel - Classement", "last_created": "Dernier créé", "last_updated": "Dernière mise à jour", "start_date": "Date de début", @@ -532,6 +548,7 @@ "continue": "Continuer", "resend": "Renvoyer", "relations": "Relations", + "dependencies": "Dépendances", "errors": { "default": { "title": "Erreur !", @@ -563,11 +580,27 @@ "quarter": "Trimestre", "press_for_commands": "Appuyez sur '/' pour les commandes", "click_to_add_description": "Cliquez pour ajouter une description", + "on_track": "Sur la bonne voie", + "off_track": "Hors de la bonne voie", + "at_risk": "À risque", + "timeline": "Chronologie", + "completion": "Achèvement", + "upcoming": "À venir", + "completed": "Terminé", + "in_progress": "En cours", + "planned": "Planifié", + "paused": "En pause", "search": { "label": "Rechercher", "placeholder": "Tapez pour rechercher", "no_matches_found": "Aucune correspondance trouvée", - "no_matching_results": "Aucun résultat correspondant" + "no_matching_results": "Aucun résultat correspondant", + "min_chars": "Saisissez au moins {count} caractères pour rechercher", + "error": "Erreur lors de la récupération des résultats de recherche", + "no_results": { + "title": "Aucun résultat correspondant", + "description": "Supprimez les critères de recherche pour voir tous les résultats" + } }, "actions": { "edit": "Modifier", @@ -576,6 +609,7 @@ "copy_link": "Copier le lien", "copy_branch_name": "Copier le nom de la branche", "archive": "Archiver", + "restore": "Restaurer", "delete": "Supprimer", "remove_relation": "Supprimer la relation", "subscribe": "S’abonner", @@ -583,7 +617,9 @@ "clear_sorting": "Effacer le tri", "show_weekends": "Afficher les week-ends", "enable": "Activer", - "disable": "Désactiver" + "disable": "Désactiver", + "copy_markdown": "Copier le markdown", + "reply": "Répondre" }, "name": "Nom", "discard": "Abandonner", @@ -596,6 +632,7 @@ "disabled": "Désactivé", "mandate": "Mandat", "mandatory": "Obligatoire", + "global": "Global", "yes": "Oui", "no": "Non", "please_wait": "Veuillez patienter", @@ -605,6 +642,7 @@ "or": "ou", "next": "Suivant", "back": "Retour", + "retry": "Réessayer", "cancelling": "Annulation", "configuring": "Configuration", "clear": "Effacer", @@ -659,30 +697,27 @@ "deactivated_user": "Utilisateur désactivé", "apply": "Appliquer", "applying": "Application", - "users": "Utilisateurs", - "admins": "Administrateurs", - "guests": "Invités", - "on_track": "Sur la bonne voie", - "off_track": "Hors de la bonne voie", - "at_risk": "À risque", - "timeline": "Chronologie", - "completion": "Achèvement", - "upcoming": "À venir", - "completed": "Terminé", - "in_progress": "En cours", - "planned": "Planifié", - "paused": "En pause", + "overview": "Vue d'ensemble", "no_of": "Nº de {entity}", "resolved": "Résolu", + "get_started": "Commencer", "worklogs": "Journaux de travail", "project_updates": "Mises à jour du projet", - "overview": "Vue d'ensemble", "workflows": "Flux de travail", + "templates": "Modèles", + "business": "Business", "members_and_teamspaces": "Membres et espaces de travail", + "recurring_work_items": "Éléments de travail récurrents", + "milestones": "Jalons", "open_in_full_screen": "Ouvrir {page} en plein écran", "details": "Détails", "project_structure": "Structure du projet", - "custom_properties": "Propriétés personnalisées" + "custom_properties": "Propriétés personnalisées", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Axe X", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane n’a pas démarré. Cela pourrait être dû au fait qu’un ou plusieurs services Plane ont échoué à démarrer.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Choisissez View Logs depuis setup.sh et les logs Docker pour en être sûr." }, + "customize_navigation": "Personnaliser la navigation", + "personal": "Personnel", + "accordion_navigation_control": "Navigation latérale en accordéon", + "horizontal_navigation_bar": "Navigation par onglets", + "show_limited_projects_on_sidebar": "Afficher un nombre limité de projets dans la barre latérale", + "enter_number_of_projects": "Entrez le nombre de projets", + "pin": "Épingler", + "unpin": "Désépingler", "workspace_dashboards": "Tableaux de bord", "pi_chat": "Plane AI", "in_app": "Dans l'application", "forms": "Formulaires", - "choose_workspace_for_integration": "Choisissez un espace de travail pour connecter cette application", - "integrations_description": "Les applications qui fonctionnent avec Plane doivent se connecter à un espace de travail où vous êtes administrateur.", - "create_a_new_workspace": "Créer un nouvel espace de travail", - "learn_more_about_workspaces": "En savoir plus sur les espaces de travail", - "no_workspaces_to_connect": "Aucun espace de travail à connecter", - "no_workspaces_to_connect_description": "Vous devez créer un espace de travail pour pouvoir connecter des intégrations et des modèles", + "milestones": "Jalons", + "milestones_description": "Les jalons offrent une couche permettant d’aligner les éléments de travail sur des dates d’achèvement partagées.", "file_upload": { "upload_text": "Cliquez ici pour télécharger le fichier", "drag_drop_text": "Glisser-déposer", "processing": "Traitement", - "invalid": "Type de fichier invalide", + "invalid_file_type": "Type de fichier invalide", "missing_fields": "Champs manquants", "success": "{fileName} téléchargé !" }, - "project_name_cannot_contain_special_characters": "Le nom du projet ne peut pas contenir de caractères spéciaux.", "date": "Date", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/fr/editor.json b/packages/i18n/src/locales/fr/editor.json index 97831420af0..633f0eb00cc 100644 --- a/packages/i18n/src/locales/fr/editor.json +++ b/packages/i18n/src/locales/fr/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Veuillez entrer une URL valide." } + }, + "ai_block": { + "content": { + "placeholder": "Décrivez le contenu de ce bloc", + "generated_here": "Votre contenu IA sera généré ici" + }, + "block_types": { + "placeholder": "Sélectionner le type de bloc", + "summarize_page": "Résumer la page", + "custom_prompt": "Invite personnalisée" + }, + "actions": { + "discard": "Abandonner", + "generate": "Générer", + "generating": "Génération", + "rewriting": "Réécriture", + "rewrite": "Réécrire", + "use_this": "Utiliser ceci", + "refine": "Affiner" + } } } diff --git a/packages/i18n/src/locales/fr/empty-state.json b/packages/i18n/src/locales/fr/empty-state.json index 723541cfbab..18e996a6309 100644 --- a/packages/i18n/src/locales/fr/empty-state.json +++ b/packages/i18n/src/locales/fr/empty-state.json @@ -249,10 +249,22 @@ "title": "Suivez les feuilles de temps pour tous les membres", "description": "Enregistrez le temps sur les éléments de travail pour afficher des feuilles de temps détaillées pour tout membre de l'équipe à travers les projets." }, + "group_syncing": { + "title": "Aucun mappage de groupe pour le moment" + }, "template_setting": { "title": "Aucun modèle pour le moment", "description": "Réduisez le temps de configuration en créant des modèles pour les projets, les éléments de travail et les pages — et démarrez un nouveau travail en quelques secondes.", "cta_primary": "Créer un modèle" + }, + "workflows": { + "title": "Aucun flux de travail pour le moment", + "description": "Créez des flux de travail pour gérer la progression de vos éléments de travail.", + "cta_primary": "Ajouter un nouveau flux de travail", + "states": { + "title": "Ajouter des états", + "description": "Sélectionnez les états par lesquels passe l’élément de travail." + } } } } diff --git a/packages/i18n/src/locales/fr/integration.json b/packages/i18n/src/locales/fr/integration.json index a39020f6527..e7f970216e7 100644 --- a/packages/i18n/src/locales/fr/integration.json +++ b/packages/i18n/src/locales/fr/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Erreur serveur lors du chargement des états" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Connectez et synchronisez vos dépôts Bitbucket Data Center avec Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Valider les jetons IdP externes pour l'accès API.", @@ -302,10 +306,10 @@ "generic_error": "Une erreur inattendue s'est produite lors du traitement de votre demande", "connection_not_found": "La connexion demandée n'a pas pu être trouvée", "multiple_connections_found": "Plusieurs connexions ont été trouvées alors qu'une seule était attendue", + "cannot_create_multiple_connections": "Vous avez déjà connecté votre organisation avec un espace de travail. Veuillez déconnecter la connexion existante avant de connecter une nouvelle.", "installation_not_found": "L'installation demandée n'a pas pu être trouvée", "user_not_found": "L'utilisateur demandé n'a pas pu être trouvé", "error_fetching_token": "Échec de la récupération du jeton d'authentification", - "cannot_create_multiple_connections": "Vous avez déjà connecté votre organisation avec un espace de travail. Veuillez déconnecter la connexion existante avant de connecter une nouvelle.", "invalid_app_credentials": "Les informations d'identification de l'application fournies sont invalides", "invalid_app_installation_id": "Échec de l'installation de l'application" }, @@ -316,6 +320,7 @@ "pulling": "Extraction", "timed_out": "Temps écoulé", "pulled": "Extrait", + "progressing": "En progression", "transforming": "Transformation", "transformed": "Transformé", "pushing": "Envoi", diff --git a/packages/i18n/src/locales/fr/module.json b/packages/i18n/src/locales/fr/module.json index 7c733f5b1d3..5a698e95eb4 100644 --- a/packages/i18n/src/locales/fr/module.json +++ b/packages/i18n/src/locales/fr/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Module} other {Modules}}", - "no_module": "Pas de module" + "no_module": "Pas de module", + "select": "Ajouter des modules" } } diff --git a/packages/i18n/src/locales/fr/navigation.json b/packages/i18n/src/locales/fr/navigation.json index 3a0a425cdd3..2c77344febb 100644 --- a/packages/i18n/src/locales/fr/navigation.json +++ b/packages/i18n/src/locales/fr/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Aucun résultat trouvé" + } + } + }, "sidebar": { + "stickies": "Stickies", + "your_work": "Votre travail", "projects": "Projets", "pages": "Pages", "new_work_item": "Nouvel élément de travail", "home": "Accueil", - "your_work": "Votre travail", "inbox": "Boîte de réception", "workspace": "Espace de travail", "views": "Vues", @@ -21,14 +29,6 @@ "epics": "Epics", "upgrade_plan": "Mettre à niveau", "plane_pro": "Plane Pro", - "business": "Business", - "recurring_work_items": "Tâches récurrentes" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Aucun résultat trouvé" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/fr/page.json b/packages/i18n/src/locales/fr/page.json index 322084f38c3..576ecb00c3b 100644 --- a/packages/i18n/src/locales/fr/page.json +++ b/packages/i18n/src/locales/fr/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Lier les pages", - "show_wiki_pages": "Afficher les pages de wiki", - "link_pages_to": "Lier les pages à", - "linked_pages": "Pages liées", - "no_description": "Cette page est vide. Écrivez quelque chose ici et voyez-le ici comme ce placeholder", - "toasts": { - "link": { - "success": { - "title": "Pages mises à jour", - "message": "Pages mises à jour avec succès" - }, - "error": { - "title": "Pages non mises à jour", - "message": "Les pages n'ont pas pu être mises à jour" - } - }, - "remove": { - "success": { - "title": "Page supprimée", - "message": "Page supprimée avec succès" - }, - "error": { - "title": "Page non supprimée", - "message": "La page n'a pas pu être supprimée" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Images manquantes", "description": "Ajoutez des images pour les voir ici." } + }, + "comments": { + "label": "Commentaires", + "empty_state": { + "title": "Aucun commentaire", + "description": "Ajoutez des commentaires pour les voir ici." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Le nom du sticky ne peut pas dépasser 100 caractères.", + "already_exists": "Il existe déjà un sticky sans description" + }, + "created": { + "title": "Sticky créé", + "message": "Le sticky a été créé avec succès" + }, + "not_created": { + "title": "Sticky non créé", + "message": "Le sticky n’a pas pu être créé" + }, + "updated": { + "title": "Sticky mis à jour", + "message": "Le sticky a été mis à jour avec succès" + }, + "not_updated": { + "title": "Sticky non mis à jour", + "message": "Le sticky n’a pas pu être mis à jour" + }, + "removed": { + "title": "Sticky supprimé", + "message": "Le sticky a été supprimé avec succès" + }, + "not_removed": { + "title": "Sticky non supprimé", + "message": "Le sticky n’a pas pu être supprimé" } }, "open_button": "Ouvrir le panneau de navigation", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Déplacer", + "loading": "Déplacement" + }, + "cannot_move_to_teamspace": "Les pages privées et partagées ne peuvent pas être déplacées vers un teamspace.", "placeholders": { + "workspace_to_all": "Rechercher des projets et des teamspaces", + "workspace_to_project": "Rechercher des projets", + "project_to_all": "Rechercher des projets et des teamspaces", + "project_to_project": "Rechercher des projets", "project_to_all_with_wiki": "Rechercher des collections wiki, des projets et des espaces d'équipe", "project_to_project_with_wiki": "Rechercher des collections wiki et des projets" }, "toasts": { + "success": { + "title": "Succès !", + "message": "Page déplacée avec succès." + }, + "error": { + "title": "Erreur !", + "message": "La page n’a pas pu être déplacée. Veuillez réessayer plus tard." + }, "collection_error": { "title": "Déplacée vers le wiki", "message": "La page a été déplacée vers le wiki, mais n'a pas pu être ajoutée à la collection sélectionnée. Elle reste dans General." diff --git a/packages/i18n/src/locales/fr/project-settings.json b/packages/i18n/src/locales/fr/project-settings.json index a6ee4e0b34f..533a0adf97b 100644 --- a/packages/i18n/src/locales/fr/project-settings.json +++ b/packages/i18n/src/locales/fr/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Membres", "project_lead": "Chef de projet", + "project_lead_description": "Sélectionnez le responsable du projet.", "default_assignee": "Acteur par défaut", + "default_assignee_description": "Sélectionnez l’attributaire par défaut du projet.", + "project_subscribers": "Abonnés du projet", + "project_subscribers_description": "Sélectionnez les membres qui recevront des notifications pour ce projet.", "guest_super_permissions": { "title": "Accorder l’accès en lecture à tous les éléments de travail pour les utilisateurs invités :", "sub_heading": "Cela permettra aux invités d’avoir un accès en lecture à tous les éléments de travail du projet." @@ -30,13 +34,11 @@ "title": "Inviter des membres", "sub_heading": "Invitez des membres à travailler sur votre projet.", "select_co_worker": "Sélectionner un acteur" - }, - "project_lead_description": "Sélectionnez le responsable du projet.", - "default_assignee_description": "Sélectionnez l’attributaire par défaut du projet.", - "project_subscribers": "Abonnés du projet", - "project_subscribers_description": "Sélectionnez les membres qui recevront des notifications pour ce projet." + } }, "states": { + "heading": "États", + "description": "Définissez et personnalisez les états du flux de travail pour suivre la progression de vos éléments de travail.", "describe_this_state_for_your_members": "Décrivez cet état pour vos membres.", "empty_state": { "title": "Aucun état disponible pour le groupe {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Étiquettes", + "description": "Créez des étiquettes personnalisées pour catégoriser et organiser vos éléments de travail", "label_title": "Titre de l’étiquette", "label_title_is_required": "Le titre de l’étiquette est requis", "label_max_char": "Le nom de l’étiquette ne doit pas dépasser 255 caractères", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Estimations", + "description": "Elles vous aident à communiquer la complexité et la charge de travail de l’équipe.", "label": "Estimations", "title": "Activer les estimations pour mon projet", - "description": "Elles vous aident à communiquer la complexité et la charge de travail de l’équipe.", + "enable_description": "Elles vous aident à communiquer la complexité et la charge de travail de l’équipe.", "no_estimate": "Sans estimation", "new": "Nouveau système d’estimation", "create": { @@ -112,6 +118,16 @@ "title": "Échec de la réorganisation des estimations", "message": "Nous n'avons pas pu réorganiser les estimations, veuillez réessayer" } + }, + "switch": { + "success": { + "title": "Système d’estimation créé", + "message": "Créé et activé avec succès" + }, + "error": { + "title": "Erreur", + "message": "Une erreur s’est produite" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatisations", + "heading": "Automatisations", + "description": "Configurez des actions automatisées pour fluidifier votre flux de gestion de projet et réduire les tâches manuelles.", "auto-archive": { "title": "Archiver automatiquement les éléments de travail fermés", "description": "Plane archivera automatiquement les éléments de travail qui ont été complétés ou annulés.", @@ -194,90 +212,116 @@ "description": "Configurez GitHub et d'autres intégrations pour synchroniser vos éléments de travail du projet." } }, - "cycles": { - "auto_schedule": { - "heading": "Planification automatique des cycles", - "description": "Maintenez les cycles en mouvement sans configuration manuelle.", - "tooltip": "Créez automatiquement de nouveaux cycles selon votre planning choisi.", - "edit_button": "Modifier", - "form": { - "cycle_title": { - "label": "Titre du cycle", - "placeholder": "Titre", - "tooltip": "Le titre sera complété par des numéros pour les cycles suivants. Par exemple : Conception - 1/2/3", - "validation": { - "required": "Le titre du cycle est requis", - "max_length": "Le titre ne doit pas dépasser 255 caractères" - } - }, - "cycle_duration": { - "label": "Durée du cycle", - "unit": "Semaines", - "validation": { - "required": "La durée du cycle est requise", - "min": "La durée du cycle doit être d'au moins 1 semaine", - "max": "La durée du cycle ne peut pas dépasser 30 semaines", - "positive": "La durée du cycle doit être positive" - } - }, - "cooldown_period": { - "label": "Période de refroidissement", - "unit": "jours", - "tooltip": "Pause entre les cycles avant le début du suivant.", - "validation": { - "required": "La période de refroidissement est requise", - "negative": "La période de refroidissement ne peut pas être négative" - } - }, - "start_date": { - "label": "Jour de début du cycle", - "validation": { - "required": "La date de début est requise", - "past": "La date de début ne peut pas être dans le passé" - } + "workflows": { + "toggle": { + "title": "Activer les flux de travail", + "description": "Définissez des flux de travail pour contrôler le déplacement des éléments de travail", + "no_states_tooltip": "Aucun état n’est ajouté au flux de travail.", + "no_work_item_types_tooltip": "Aucun type d’élément de travail n’est ajouté au flux de travail.", + "no_states_or_work_item_types_tooltip": "Aucun état ni type d’élément de travail n’est ajouté au flux de travail.", + "toast": { + "loading": { + "enabling": "Activation des flux de travail", + "disabling": "Désactivation des flux de travail" }, - "number_of_cycles": { - "label": "Nombre de cycles futurs", - "validation": { - "required": "Le nombre de cycles est requis", - "min": "Au moins 1 cycle est requis", - "max": "Impossible de planifier plus de 3 cycles" - } + "success": { + "title": "Succès !", + "message": "Flux de travail activés avec succès." }, - "auto_rollover": { - "label": "Report automatique des éléments de travail", - "tooltip": "Le jour où un cycle se termine, déplacer tous les éléments de travail non terminés vers le cycle suivant." + "error": { + "title": "Erreur !", + "message": "Échec de l’activation des flux de travail. Veuillez réessayer." + } + } + }, + "heading": "Flux de travail", + "description": "Automatisez les transitions d’éléments de travail et définissez des règles pour contrôler la progression des tâches dans le pipeline de votre projet.", + "add_button": "Ajouter un nouveau flux de travail", + "search": "Rechercher des flux de travail", + "detail": { + "define": "Définir le flux de travail", + "add_states": "Ajouter des états", + "unmapped_states": { + "title": "États non mappés détectés", + "description": "Certains éléments de travail des types sélectionnés sont actuellement dans des états qui n’existent pas dans ce flux de travail.", + "note": "Si vous activez ce flux de travail, ces éléments passeront automatiquement à l’état initial de ce flux de travail.", + "label": "États manquants", + "tooltip": "Certains éléments de travail sont dans des états qui ne sont pas mappés à ce flux de travail. Ouvrez le flux de travail pour le vérifier." + } + }, + "select_states": { + "empty_state": { + "title": "Tous les états sont utilisés", + "description": "Tous les états définis pour ce projet sont déjà présents dans votre flux de travail actuel." + } + }, + "default_footer": { + "fallback_message": "Ce flux de travail s’applique à tout type d’élément de travail non assigné à un flux de travail." + }, + "create": { + "heading": "Créer un nouveau flux de travail", + "name": { + "placeholder": "Ajoutez un nom unique", + "validation": { + "max_length": "Le nom doit faire moins de 255 caractères", + "required": "Le nom est requis", + "invalid": "Le nom ne peut contenir que des lettres, des chiffres, des espaces, des tirets et des apostrophes" } }, - "toast": { - "toggle": { - "loading_enable": "Activation de la planification automatique des cycles", - "loading_disable": "Désactivation de la planification automatique des cycles", - "success": { - "title": "Succès !", - "message": "Planification automatique des cycles activée avec succès." - }, - "error": { - "title": "Erreur !", - "message": "Échec de l'activation de la planification automatique des cycles." - } - }, - "save": { - "loading": "Enregistrement de la configuration de planification automatique des cycles", - "success": { - "title": "Succès !", - "message_create": "Configuration de planification automatique des cycles enregistrée avec succès.", - "message_update": "Configuration de planification automatique des cycles mise à jour avec succès." - }, - "error": { - "title": "Erreur !", - "message_create": "Échec de l'enregistrement de la configuration de planification automatique des cycles.", - "message_update": "Échec de la mise à jour de la configuration de planification automatique des cycles." - } + "description": { + "placeholder": "Ajoutez une courte description", + "validation": { + "invalid": "La description ne peut contenir que des lettres, des chiffres, des espaces, des tirets et des apostrophes" } + }, + "work_item_type": { + "label": "Type d’élément de travail" + }, + "success": { + "title": "Succès !", + "message": "Flux de travail créé avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Échec de la création du flux de travail. Veuillez réessayer." + } + }, + "update": { + "success": { + "title": "Succès !", + "message": "Flux de travail mis à jour avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Échec de la mise à jour du flux de travail. Veuillez réessayer." + } + }, + "delete": { + "loading": "Suppression du flux de travail", + "success": { + "title": "Succès !", + "message": "Flux de travail supprimé avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Échec de la suppression du flux de travail. Veuillez réessayer." + } + }, + "add_states": { + "success": { + "title": "Succès !", + "message": "États ajoutés avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Échec de l’ajout des états. Veuillez réessayer." } } }, + "work_item_types": { + "heading": "Types d’éléments de travail", + "description": "Créez et personnalisez différents types d’éléments de travail avec des propriétés uniques" + }, "features": { "cycles": { "title": "Cycles", @@ -385,6 +429,98 @@ "success": "Fonctionnalité du projet mise à jour avec succès.", "error": "Une erreur s'est produite lors de la mise à jour de la fonctionnalité du projet. Veuillez réessayer." } + }, + "project_updates": { + "heading": "Mises à jour du projet", + "description": "Suivi consolidé et surveillance de la progression pour ce projet" + }, + "templates": { + "heading": "Modèles", + "description": "Économisez 80% du temps consacré à la création de projets, d’éléments de travail et de pages en utilisant des modèles." + }, + "cycles": { + "auto_schedule": { + "heading": "Planification automatique des cycles", + "description": "Maintenez les cycles en mouvement sans configuration manuelle.", + "tooltip": "Créez automatiquement de nouveaux cycles selon votre planning choisi.", + "edit_button": "Modifier", + "form": { + "cycle_title": { + "label": "Titre du cycle", + "placeholder": "Titre", + "tooltip": "Le titre sera complété par des numéros pour les cycles suivants. Par exemple : Conception - 1/2/3", + "validation": { + "required": "Le titre du cycle est requis", + "max_length": "Le titre ne doit pas dépasser 255 caractères" + } + }, + "cycle_duration": { + "label": "Durée du cycle", + "unit": "Semaines", + "validation": { + "required": "La durée du cycle est requise", + "min": "La durée du cycle doit être d'au moins 1 semaine", + "max": "La durée du cycle ne peut pas dépasser 30 semaines", + "positive": "La durée du cycle doit être positive" + } + }, + "cooldown_period": { + "label": "Période de refroidissement", + "unit": "jours", + "tooltip": "Pause entre les cycles avant le début du suivant.", + "validation": { + "required": "La période de refroidissement est requise", + "negative": "La période de refroidissement ne peut pas être négative" + } + }, + "start_date": { + "label": "Jour de début du cycle", + "validation": { + "required": "La date de début est requise", + "past": "La date de début ne peut pas être dans le passé" + } + }, + "number_of_cycles": { + "label": "Nombre de cycles futurs", + "validation": { + "required": "Le nombre de cycles est requis", + "min": "Au moins 1 cycle est requis", + "max": "Impossible de planifier plus de 3 cycles" + } + }, + "auto_rollover": { + "label": "Report automatique des éléments de travail", + "tooltip": "Le jour où un cycle se termine, déplacer tous les éléments de travail non terminés vers le cycle suivant." + } + }, + "toast": { + "toggle": { + "loading_enable": "Activation de la planification automatique des cycles", + "loading_disable": "Désactivation de la planification automatique des cycles", + "success": { + "title": "Succès !", + "message": "Planification automatique des cycles activée avec succès." + }, + "error": { + "title": "Erreur !", + "message": "Échec de l'activation de la planification automatique des cycles." + } + }, + "save": { + "loading": "Enregistrement de la configuration de planification automatique des cycles", + "success": { + "title": "Succès !", + "message_create": "Configuration de planification automatique des cycles enregistrée avec succès.", + "message_update": "Configuration de planification automatique des cycles mise à jour avec succès." + }, + "error": { + "title": "Erreur !", + "message_create": "Échec de l'enregistrement de la configuration de planification automatique des cycles.", + "message_update": "Échec de la mise à jour de la configuration de planification automatique des cycles." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/fr/project.json b/packages/i18n/src/locales/fr/project.json index eeef38eeaf6..8681827417d 100644 --- a/packages/i18n/src/locales/fr/project.json +++ b/packages/i18n/src/locales/fr/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Enregistrez des vues filtrées pour votre projet. Créez-en autant que nécessaire", + "description": "Les vues sont un ensemble de filtres enregistrés que vous utilisez fréquemment ou auxquels vous souhaitez avoir un accès facile. Tous les acteurs d’un projet peuvent voir les vues de chacun et choisir celle qui convient le mieux à leurs besoins.", + "primary_button": { + "text": "Créez votre première vue", + "comic": { + "title": "Les vues fonctionnent sur les propriétés des éléments de travail.", + "description": "Vous pouvez créer une vue ici avec autant de propriétés comme filtres que souhaité." + } + }, + "filter": { + "title": "Aucune vue correspondante", + "description": "Aucune vue ne correspond aux critères de recherche.\n Créez plutôt une nouvelle vue." + } + }, + "no_archived_issues": { + "title": "Aucun élément de travail archivé pour le moment", + "description": "Manuellement ou par automatisation, vous pouvez archiver les éléments de travail terminés ou annulés. Retrouvez-les ici une fois archivés.", + "primary_button": { + "text": "Configurer l’automatisation" + } + }, + "issues_empty_filter": { + "title": "Aucun élément de travail trouvé correspondant aux filtres appliqués", + "secondary_button": { + "text": "Effacer tous les filtres" + } + }, + "public": { + "title": "Pas encore de pages publiques", + "description": "Consultez ici les pages partagées avec tout le monde dans votre projet.", + "primary_button": { + "text": "Créez votre première page" + } + }, + "archived": { + "title": "Pas encore de pages archivées", + "description": "Archivez les pages qui ne sont pas dans votre radar. Accédez-y ici quand nécessaire." + }, + "shared": { + "title": "Pas encore de pages partagées", + "description": "Les pages que d’autres ont partagées avec vous apparaîtront ici." + } + }, + "delete_view": { + "title": "Êtes-vous sûr de vouloir supprimer cette vue ?", + "content": "Si vous confirmez, toutes les options de tri, de filtrage et d’affichage et la mise en page que vous avez choisie pour cette vue seront définitivement supprimées sans possibilité de les restaurer." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Enregistrez des vues filtrées pour votre projet. Créez-en autant que nécessaire", - "description": "Les vues sont un ensemble de filtres enregistrés que vous utilisez fréquemment ou auxquels vous souhaitez avoir un accès facile. Tous les acteurs d’un projet peuvent voir les vues de chacun et choisir celle qui convient le mieux à leurs besoins.", - "primary_button": { - "text": "Créez votre première vue", - "comic": { - "title": "Les vues fonctionnent sur les propriétés des éléments de travail.", - "description": "Vous pouvez créer une vue ici avec autant de propriétés comme filtres que souhaité." - } - } - }, - "filter": { - "title": "Aucune vue correspondante", - "description": "Aucune vue ne correspond aux critères de recherche.\n Créez plutôt une nouvelle vue." - } - }, - "delete_view": { - "title": "Êtes-vous sûr de vouloir supprimer cette vue ?", - "content": "Si vous confirmez, toutes les options de tri, de filtrage et d’affichage et la mise en page que vous avez choisie pour cette vue seront définitivement supprimées sans possibilité de les restaurer." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Manuel" } }, + "project_members": { + "full_name": "Nom complet", + "display_name": "Nom d’affichage", + "email": "E-mail", + "joining_date": "Date d’adhésion", + "role": "Rôle" + }, "project": { "members_import": { "title": "Importer des membres depuis un CSV", diff --git a/packages/i18n/src/locales/fr/settings.json b/packages/i18n/src/locales/fr/settings.json index 31082508afd..0ac8e1ee048 100644 --- a/packages/i18n/src/locales/fr/settings.json +++ b/packages/i18n/src/locales/fr/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Préférences", + "description": "Personnalisez votre expérience de l’application selon votre façon de travailler" + }, "notifications": { + "heading": "Notifications par e-mail", + "description": "Restez informé des éléments de travail auxquels vous êtes abonné. Activez cette option pour être notifié.", "select_default_view": "Sélectionner la vue par défaut", "compact": "Compact", "full": "Plein écran" + }, + "security": { + "heading": "Sécurité" + }, + "api_tokens": { + "title": "Jetons d’accès personnel", + "description": "Générez des jetons API sécurisés pour intégrer vos données avec des systèmes et applications externes." + }, + "activity": { + "heading": "Activité", + "description": "Suivez vos actions et modifications récentes dans tous les projets et éléments de travail." + }, + "connections": { + "title": "Connexions", + "heading": "Connexions", + "description": "Gérez les paramètres de connexion de votre espace de travail." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Sécurité", "activity": "Activité", - "appearance": "Apparence", + "preferences": "Préférences", "notifications": "Notifications", + "api-tokens": "Jetons d’accès personnel", "connections": "Connexions" }, "tabs": { diff --git a/packages/i18n/src/locales/fr/template.json b/packages/i18n/src/locales/fr/template.json index c2701ccf7cc..e95e818c89e 100644 --- a/packages/i18n/src/locales/fr/template.json +++ b/packages/i18n/src/locales/fr/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Modèles", "description": "Économisez 80% du temps consacré à la création de projets, d'éléments de travail et de pages lorsque vous utilisez des modèles.", + "new_project_template": "Nouveau modèle de projet", + "new_work_item_template": "Nouveau modèle d’élément de travail", + "new_page_template": "Nouveau modèle de page", "options": { "project": { "label": "Modèles de projet" @@ -157,6 +160,14 @@ "required": "Au moins un mot-clé est requis" } }, + "website": { + "label": "URL du site web", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL invalide", + "maxLength": "L’URL doit comporter moins de 800 caractères" + } + }, "company_name": { "label": "Nom de l'entreprise", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Adresse email invalide", - "required": "L'adresse email du support est requise", "maxLength": "L'adresse email du support doit comporter moins de 255 caractères" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Aucune étiquette pour le moment. Créez des étiquettes pour aider à organiser et filtrer les éléments de travail dans votre projet." }, + "no_modules": { + "description": "Aucun module pour le moment. Organisez le travail en sous-projets avec des responsables et des acteurs dédiés." + }, "no_work_items": { "description": "Aucun élément de travail pour le moment. Ajoutez-en un pour structurer votre travail mieux." }, diff --git a/packages/i18n/src/locales/fr/tour.json b/packages/i18n/src/locales/fr/tour.json index 5df1f895c27..553228fd93b 100644 --- a/packages/i18n/src/locales/fr/tour.json +++ b/packages/i18n/src/locales/fr/tour.json @@ -110,6 +110,12 @@ "description": "Un élément de travail peut être reporté pour le réviser plus tard. Il sera déplacé au bas de votre liste de demandes ouvertes." } }, + "mcp_connectors": { + "step_zero": { + "title": "Arrêtez de changer d’onglet. Connectez votre monde.", + "description": "Liez GitHub et Slack pour suivre les PR et résumer les discussions directement dans Plane AI." + } + }, "navigation": { "modal": { "title": "Navigation, réinventée", diff --git a/packages/i18n/src/locales/fr/update.json b/packages/i18n/src/locales/fr/update.json index abf40068d85..ea082941d33 100644 --- a/packages/i18n/src/locales/fr/update.json +++ b/packages/i18n/src/locales/fr/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "Progrès", + "since_last_update": "Depuis la dernière mise à jour", + "comments": "{count, plural, one{# commentaire} other{# commentaires}}" + }, "add_update": "Ajouter une mise à jour", "add_update_placeholder": "Ajoutez votre mise à jour ici", "empty": { "title": "Aucune mise à jour", "description": "Vous pouvez voir les mises à jour ici." }, - "delete": { - "title": "Supprimer la mise à jour", - "confirmation": "Êtes-vous sûr de vouloir supprimer cette mise à jour ? Cette action est irréversible.", - "success": { - "title": "Mise à jour supprimée", - "message": "La mise à jour a été supprimée avec succès." - }, - "error": { - "title": "Mise à jour non supprimée", - "message": "La mise à jour n'a pas pu être supprimée." - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "Progrès", - "since_last_update": "Depuis la dernière mise à jour", - "comments": "{count, plural, one{# commentaire} other{# commentaires}}" - }, "create": { "success": { "title": "Mise à jour créée", @@ -55,6 +43,18 @@ "message": "La mise à jour n'a pas pu être créée." } }, + "delete": { + "title": "Supprimer la mise à jour", + "confirmation": "Êtes-vous sûr de vouloir supprimer cette mise à jour ? Cette action est irréversible.", + "success": { + "title": "Mise à jour supprimée", + "message": "La mise à jour a été supprimée avec succès." + }, + "error": { + "title": "Mise à jour non supprimée", + "message": "La mise à jour n'a pas pu être supprimée." + } + }, "update": { "success": { "title": "Mise à jour mise à jour", diff --git a/packages/i18n/src/locales/fr/wiki.json b/packages/i18n/src/locales/fr/wiki.json index 66b9db1348e..75c45e23ed0 100644 --- a/packages/i18n/src/locales/fr/wiki.json +++ b/packages/i18n/src/locales/fr/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "La page n'a pas pu être créée ou ajoutée à la collection. Veuillez réessayer.", "collection_link_copied": "Lien de la collection copié dans le presse-papiers." } + }, + "wiki": { + "upgrade_flow": { + "title": "Mettez à niveau pour débloquer le Wiki", + "description": "Débloquez les pages publiques, l’historique des versions, les pages partagées, la collaboration en temps réel et les pages d’espace de travail pour les wikis, la documentation d’entreprise et les bases de connaissances avec Plane Pro.", + "upgrade_button": { + "text": "Mettre à niveau" + }, + "learn_more_button": { + "text": "En savoir plus" + }, + "download_button": { + "text": "Télécharger les données", + "loading": "Téléchargement" + }, + "tabs": { + "nested_pages": "Pages imbriquées", + "add_embeds": "Ajouter des intégrations", + "publish_pages": "Publier des pages", + "comments": "Commentaires" + } + }, + "nested_pages_download_banner": { + "title": "Les pages imbriquées nécessitent un forfait payant. Mettez à niveau pour débloquer." + } } } diff --git a/packages/i18n/src/locales/fr/work-item-type.json b/packages/i18n/src/locales/fr/work-item-type.json index e8978d3a2d6..96b5d0a66cf 100644 --- a/packages/i18n/src/locales/fr/work-item-type.json +++ b/packages/i18n/src/locales/fr/work-item-type.json @@ -3,11 +3,25 @@ "label": "Types d'éléments de travail", "label_lowercase": "types d'éléments de travail", "settings": { - "title": "Types d'éléments de travail", + "description": "Personnalisez et ajoutez vos propres propriétés pour l’adapter aux besoins de votre équipe.", + "cant_delete_default_message": "Ce type d'élément de travail ne peut pas être supprimé car il est défini comme le type par défaut pour ce projet.", + "set_as_default": "Définir par défaut", + "cant_set_default_inactive_message": "Activez ce type avant de le définir par défaut", + "set_default_confirmation": { + "title": "Définir comme type d'élément de travail par défaut", + "description": "Définir {name} par défaut l'importera dans tous les projets de cet espace de travail. Tous les nouveaux éléments de travail utiliseront ce type par défaut.", + "confirm_button": "Définir par défaut" + }, "properties": { - "title": "Propriétés personnalisées des éléments de travail", + "title": "Propriétés", + "description": "Créez et personnalisez des propriétés.", "tooltip": "Chaque type d'élément de travail est livré avec un ensemble de propriétés par défaut comme Titre, Description, Assigné, État, Priorité, Date de début, Date d'échéance, Module, Cycle, etc. Vous pouvez également personnaliser et ajouter vos propres propriétés pour l'adapter aux besoins de votre équipe.", "add_button": "Ajouter une nouvelle propriété", + "project": { + "add_button": { + "import_from_workspace": "Importer depuis l’espace de travail" + } + }, "dropdown": { "label": "Type de propriété", "placeholder": "Sélectionner le type" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Créer une nouvelle propriété personnalisée", + "update": "Mettre à jour la propriété personnalisée" + }, "form": { "display_name": { "placeholder": "Titre" @@ -213,9 +231,50 @@ "description": "Les nouvelles propriétés que vous ajoutez pour ce type d'élément de travail apparaîtront ici." } }, + "types": { + "title": "Types", + "description": "Créez et personnalisez les types d’éléments de travail avec des propriétés.", + "sort_options": { + "project_count": "Nombre de projets concernés" + }, + "filter_options": { + "show_active": "Afficher les actifs", + "show_inactive": "Afficher les inactifs" + }, + "project": { + "add_button": { + "create_new": "Créer nouveau", + "import_from_workspace": "Importer depuis l’espace de travail" + }, + "banner": { + "with_access": "Activez les types d’éléments de travail pour importer des types depuis le niveau espace de travail", + "without_access": "Les types d’éléments de travail sont désactivés. Contactez l’administrateur de l’espace de travail pour les activer dans les paramètres de l’espace de travail." + } + } + }, + "linked_properties": { + "title": "Propriétés personnalisées", + "add_button": "Ajouter des propriétés", + "modal": { + "title": "Ajouter des propriétés", + "empty": { + "title": "Aucune propriété disponible", + "description": "Toutes les propriétés ont déjà été liées à ce type." + } + }, + "unlink_confirmation": { + "title": "Dissocier la propriété", + "description": "Dissocier cette propriété supprimera définitivement toutes ses valeurs dans tous les éléments de travail utilisant ce type. Cette action est irréversible.", + "input_label": "Tapez", + "input_label_suffix": "pour continuer :", + "confirm": "Dissocier la propriété", + "loading": "Dissociation" + } + }, "item_delete_confirmation": { "title": "Supprimer ce type", "description": "La suppression de types peut entraîner la perte de données existantes.", + "can_disable_warning": "Voulez-vous désactiver le type à la place ?", "primary_button": "Oui, supprime-le", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Impossible de supprimer le type d'élément de travail par défaut", "cannot_delete_work_item_type_with_associated_work_items": "Impossible de supprimer le type d'élément de travail avec des éléments de travail associés" - }, - "can_disable_warning": "Voulez-vous désactiver le type à la place ?" - }, - "cant_delete_default_message": "Ce type d'élément de travail ne peut pas être supprimé car il est défini comme le type par défaut pour ce projet.", - "set_as_default": "Définir par défaut", - "cant_set_default_inactive_message": "Activez ce type avant de le définir par défaut", - "set_default_confirmation": { - "title": "Définir comme type d'élément de travail par défaut", - "description": "Définir {name} par défaut l'importera dans tous les projets de cet espace de travail. Tous les nouveaux éléments de travail utiliseront ce type par défaut.", - "confirm_button": "Définir par défaut" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Erreur !", "message": { + "default": "Échec de la création du type d’élément de travail. Veuillez réessayer !", "conflict": "Le type {name} existe déjà. Choisissez un autre nom." } } @@ -269,6 +320,7 @@ "error": { "title": "Erreur !", "message": { + "default": "Échec de la mise à jour du type d’élément de travail. Veuillez réessayer !", "conflict": "Le type {name} existe déjà. Choisissez un autre nom." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Erreur de validation !", + "title": "L'enregistrement rompra les liens existants", "content": { "intro": "Le type d'élément de travail {workItemTypeName} comporte :", - "parent_items": "{count, plural, one {élément de travail parent} other {éléments de travail parents}}", + "parent_items": "{count, plural, one {# lien parent sera supprimé} other {# liens parents seront supprimés}}.", "child_items": "{count, plural, one {sous-élément de travail} other {sous-éléments de travail}}", "parent_line_suffix_when_also_children": ", et ", "footer": "Cette modification supprimera les relations parent-enfant des éléments de travail existants du type {workItemTypeName}." }, "confirm_input": { - "label": "Saisissez « Confirmer » pour continuer.", - "placeholder": "Confirmer" + "label": "Saisissez « confirmer » pour continuer.", + "placeholder": "confirmer" }, "error_toast": { "title": "Erreur !", - "message": "Impossible de rompre la hiérarchie. Veuillez réessayer." + "message": "Échec du déliage et de l'enregistrement. Veuillez réessayer." }, "confirm_button": { - "loading": "Application en cours", - "default": "Appliquer et dissocier" + "loading": "Enregistrement", + "default": "Enregistrer quand même" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/fr/work-item.json b/packages/i18n/src/locales/fr/work-item.json index a34c1dbbcc1..04a5958092b 100644 --- a/packages/i18n/src/locales/fr/work-item.json +++ b/packages/i18n/src/locales/fr/work-item.json @@ -20,6 +20,7 @@ "due_date": "Ajouter une date d’échéance", "parent": "Ajouter un élément de travail parent", "sub_issue": "Ajouter un sous-élément de travail", + "dependency": "Ajouter une dépendance", "relation": "Ajouter une relation", "link": "Ajouter un lien", "existing": "Ajouter un élément de travail existant" @@ -110,6 +111,43 @@ "copy_link": { "success": "Lien du commentaire copié dans le presse-papiers", "error": "Erreur lors de la copie du lien du commentaire. Veuillez réessayer plus tard." + }, + "replies": { + "create": { + "submit_button": "Ajouter une réponse", + "placeholder": "Ajouter une réponse" + }, + "toast": { + "fetch": { + "error": { + "message": "Échec de la récupération des réponses" + } + }, + "create": { + "success": { + "message": "Réponse créée avec succès" + }, + "error": { + "message": "Échec de la création de la réponse" + } + }, + "update": { + "success": { + "message": "Réponse mise à jour avec succès" + }, + "error": { + "message": "Échec de la mise à jour de la réponse" + } + }, + "delete": { + "success": { + "message": "Réponse supprimée avec succès" + }, + "error": { + "message": "Échec de la suppression de la réponse" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Tout désélectionner" }, "open_in_full_screen": "Ouvrir l’élément de travail en plein écran", + "duplicate": { + "modal": { + "title": "Faire une copie vers un autre projet", + "description1": "Cela crée une copie de l’élément de travail.", + "description2": "Toutes les données de propriétés seront supprimées lors de la duplication.", + "placeholder": "Sélectionner un projet" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Élément de travail dupliqué avec succès" + }, + "error": { + "message": "Échec de la duplication de l’élément de travail" + } + } + }, + "pages": { + "link_pages": "Lier les pages", + "show_wiki_pages": "Afficher les pages Wiki", + "link_pages_to": "Lier les pages à", + "linked_pages": "Pages liées", + "no_description": "Cette page est vide. Pourquoi ne pas écrire quelque chose à l’intérieur et le voir apparaître ici comme ce placeholder", + "toasts": { + "link": { + "success": { + "title": "Pages mises à jour", + "message": "Pages mises à jour avec succès" + }, + "error": { + "title": "Échec de la mise à jour des pages", + "message": "Échec de la mise à jour des pages" + } + }, + "remove": { + "success": { + "title": "Page supprimée", + "message": "Page supprimée avec succès" + }, + "error": { + "title": "Échec de la suppression de la page", + "message": "Échec de la suppression de la page" + } + } + } + }, "vote": { "click_to_upvote": "Cliquez pour voter pour", "click_to_downvote": "Cliquez pour voter contre", @@ -241,54 +326,6 @@ "title": "Impossible de mettre à jour les éléments de travail", "message": "Le changement d'état n'est pas autorisé pour certains éléments de travail. Assurez-vous que le changement d'état est autorisé." } - }, - "workflows": { - "toggle": { - "title": "Activer les workflows", - "description": "Définissez des workflows pour contrôler le déplacement des éléments de travail", - "no_states_tooltip": "Aucun état n'a été ajouté au workflow.", - "toast": { - "loading": { - "enabling": "Activation des workflows", - "disabling": "Désactivation des workflows" - }, - "success": { - "title": "Succès !", - "message": "Les workflows ont été activés avec succès." - }, - "error": { - "title": "Erreur !", - "message": "Impossible d'activer les workflows. Veuillez réessayer." - } - } - }, - "heading": "Flux de travail", - "description": "Automatisez les transitions des éléments de travail et définissez des règles pour contrôler la façon dont les tâches progressent dans le pipeline de votre projet.", - "add_button": "Ajouter un nouveau workflow", - "search": "Rechercher des workflows", - "detail": { - "define": "Définir le workflow", - "add_states": "Ajouter des états", - "unmapped_states": { - "title": "États non mappés détectés", - "description": "Certains éléments de travail des types sélectionnés se trouvent actuellement dans des états qui n'existent pas dans ce workflow.", - "note": "Si vous activez ce workflow, ces éléments seront automatiquement déplacés vers l'état initial de ce workflow.", - "label": "États manquants", - "tooltip": "Certains éléments de travail se trouvent dans des états qui ne sont pas mappés à ce workflow. Ouvrez le workflow pour le vérifier." - } - }, - "select_states": { - "empty_state": { - "title": "Tous les états sont utilisés", - "description": "Tous les états définis pour ce projet sont déjà présents dans votre workflow actuel." - } - }, - "default_footer": { - "fallback_message": "Ce workflow s'applique à tout type d'élément de travail qui n'est associé à aucun workflow." - }, - "create": { - "heading": "Créer un nouveau workflow" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/fr/workspace-settings.json b/packages/i18n/src/locales/fr/workspace-settings.json index 997125027ed..8b94c881acf 100644 --- a/packages/i18n/src/locales/fr/workspace-settings.json +++ b/packages/i18n/src/locales/fr/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Facturation & Plans", + "description": "Choisissez votre forfait, gérez vos abonnements et passez facilement à une version supérieure au fur et à mesure que vos besoins évoluent.", "title": "Facturation & Plans", "current_plan": "Plan actuel", "free_plan": "Vous utilisez actuellement le plan gratuit", "view_plans": "Voir les plans" }, "exports": { + "heading": "Exportations", + "description": "Exportez les données de votre projet dans différents formats et accédez à votre historique d’exportations avec les liens de téléchargement.", "title": "Exportations", "exporting": "Exportation", "previous_exports": "Exportations précédentes", "export_separate_files": "Exporter les données dans des fichiers séparés", + "exporting_projects": "Exportation du projet", + "format": "Format", "filters_info": "Appliquez des filtres pour exporter des éléments de travail spécifiques selon vos critères.", "modal": { "title": "Exporter vers", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooks", + "description": "Automatisez les notifications vers des services externes lors d’événements du projet.", "title": "Webhooks", "add_webhook": "Ajouter un webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Intégrations", + "heading": "Intégrations", + "description": "Connectez-vous avec des outils et services populaires pour synchroniser votre travail dans tout votre écosystème.", "page_title": "Travaillez avec vos données Plane dans les applications disponibles ou dans les vôtres.", "page_description": "Affichez toutes les intégrations utilisées par cet espace de travail ou par vous." }, "imports": { - "title": "Importations" + "title": "Importations", + "heading": "Importations", + "description": "Connectez et importez des données depuis vos outils de gestion de projet existants pour simplifier l’intégration de votre flux de travail." }, "worklogs": { - "title": "Journaux de travail" + "title": "Journaux de travail", + "heading": "Journaux de travail", + "description": "Téléchargez les journaux de travail (feuilles de temps) pour n’importe qui dans n’importe quel projet." }, "group_syncing": { "title": "Synchronisation des groupes", @@ -242,7 +256,10 @@ "description": "Configurez votre domaine et activez l'authentification unique" }, "project_states": { - "title": "États du projet" + "title": "États du projet", + "heading": "Consultez la vue d’ensemble de la progression pour tous les projets.", + "description": "Les États de projet sont une fonctionnalité exclusive à Plane pour suivre la progression de tous vos projets par n’importe quelle propriété de projet.", + "go_to_settings": "Aller aux paramètres" }, "projects": { "title": "Projets", @@ -252,6 +269,16 @@ "labels": "Étiquettes du projet" } }, + "templates": { + "title": "Modèles", + "heading": "Modèles", + "description": "Économisez 80% du temps consacré à la création de projets, d’éléments de travail et de pages en utilisant des modèles." + }, + "relations": { + "title": "Relations", + "heading": "Relations", + "description": "Créez et gérez des types de relations qui connectent les éléments de travail dans votre espace de travail." + }, "cancel_trial": { "title": "Annulez d'abord votre période d'essai.", "description": "Vous avez une période d'essai active sur l'un de nos forfaits payants. Veuillez d'abord l'annuler pour continuer.", @@ -263,6 +290,7 @@ "cancel_error_message": "Veuillez réessayer." }, "applications": { + "internal": "Interne", "title": "Applications", "applicationId_copied": "ID application copié dans le presse-papiers", "clientId_copied": "ID client copié dans le presse-papiers", @@ -271,10 +299,61 @@ "your_apps": "Vos applications", "connect": "Connecter", "connected": "Connecté", + "disconnect": "Déconnecter", "install": "Installer", "installed": "Installé", "configure": "Configurer", "app_available": "Vous avez rendu cette application disponible pour une utilisation avec un espace de travail Plane", + "app_credentials_regenrated": { + "title": "Les identifiants de l'application ont été régénérés avec succès", + "description": "Remplacez le secret client partout où il est utilisé. L'ancien secret n'est plus valide." + }, + "app_created": { + "title": "Application créée avec succès", + "description": "Utilisez les identifiants pour installer l'application dans un espace de travail Plane" + }, + "installed_apps": "Applications installées", + "all_apps": "Toutes les applications", + "internal_apps": "Applications internes", + "app_name_title": "Comment allez-vous appeler cette application", + "app_description_title": { + "label": "Description longue", + "placeholder": "Rédigez une longue description pour la place de marché. Appuyez sur '/' pour afficher les commandes." + }, + "authorization_grant_type": { + "title": "Type de connexion", + "description": "Choisissez si votre application doit être installée une fois pour l'espace de travail ou permettre à chaque utilisateur de connecter son propre compte" + }, + "website": { + "title": "Site web", + "description": "Lien vers le site web de votre application.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Créateur d'applications", + "description": "La personne ou l'organisation qui crée l'application." + }, + "app_maker_error": "Le créateur de l'application est requis", + "setup_url": { + "label": "URL de configuration", + "description": "Les utilisateurs seront redirigés vers cette URL lorsqu'ils installeront l'application.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL du webhook", + "description": "C'est ici que nous enverrons les événements et mises à jour webhook depuis les espaces de travail où votre application est installée.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Secret Webhook", + "description": "Secret utilisé pour vérifier les requêtes webhook entrantes.", + "placeholder": "Saisissez une clé secrète aléatoire" + }, + "redirect_uris": { + "label": "URI de redirection (séparés par des espaces)", + "description": "Les utilisateurs seront redirigés vers ce chemin après s'être authentifiés avec Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Connectez un espace de travail Plane pour commencer à l'utiliser", "client_id_and_secret": "ID Client et Secret", "client_id_and_secret_description": "Copiez et sauvegardez cette clé secrète. Vous ne pourrez plus voir cette clé après avoir cliqué sur Fermer.", @@ -286,23 +365,13 @@ "slug_already_exists": "Le slug existe déjà", "failed_to_create_application": "Échec de la création de l'application", "upload_logo": "Télécharger le logo", - "app_name_title": "Comment allez-vous appeler cette application", "app_name_error": "Le nom de l'application est requis", "app_short_description_title": "Donnez une courte description à cette application", "app_short_description_error": "La description courte de l'application est requise", - "app_description_title": { - "label": "Description longue", - "placeholder": "Rédigez une longue description pour la place de marché. Appuyez sur '/' pour afficher les commandes." - }, - "authorization_grant_type": { - "title": "Type de connexion", - "description": "Choisissez si votre application doit être installée une fois pour l'espace de travail ou permettre à chaque utilisateur de connecter son propre compte" - }, "app_description_error": "La description de l'application est requise", "app_slug_title": "Slug de l'application", "app_slug_error": "Le slug de l'application est requis", - "app_maker_title": "Créateur de l'application", - "app_maker_error": "Le créateur de l'application est requis", + "invalid_website_error": "Site web invalide", "webhook_url_title": "URL du Webhook", "webhook_url_error": "L'URL du webhook est requise", "invalid_webhook_url_error": "URL du webhook invalide", @@ -364,7 +433,6 @@ "video_url_title": "URL de la vidéo", "video_url_error": "La URL de la vidéo est requise", "invalid_video_url_error": "URL de la vidéo invalide", - "setup_url_title": "URL de configuration", "setup_url_error": "La URL de configuration est requise", "invalid_setup_url_error": "URL de configuration invalide", "configuration_url_title": "URL de configuration", @@ -380,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Fichier invalide ou dépasse la limite de taille ({size} MB)", "uploading": "Téléchargement...", "upload_and_save": "Télécharger et enregistrer", - "app_credentials_regenrated": { - "title": "Les identifiants de l'application ont été régénérés avec succès", - "description": "Remplacez le secret client partout où il est utilisé. L'ancien secret n'est plus valide." - }, - "app_created": { - "title": "Application créée avec succès", - "description": "Utilisez les identifiants pour installer l'application dans un espace de travail Plane" - }, - "installed_apps": "Applications installées", - "all_apps": "Toutes les applications", - "internal_apps": "Applications internes", - "website": { - "title": "Site web", - "description": "Lien vers le site web de votre application.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Créateur d'applications", - "description": "La personne ou l'organisation qui crée l'application." - }, - "setup_url": { - "label": "URL de configuration", - "description": "Les utilisateurs seront redirigés vers cette URL lorsqu'ils installeront l'application.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL du webhook", - "description": "C'est ici que nous enverrons les événements et mises à jour webhook depuis les espaces de travail où votre application est installée.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI de redirection (séparés par des espaces)", - "description": "Les utilisateurs seront redirigés vers ce chemin après s'être authentifiés avec Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Demande d’installation", "app_consent_no_access_description": "Cette application ne peut être installée qu'après qu'un administrateur de l'espace de travail l'ait installée. Contactez l'administrateur de votre espace de travail pour continuer.", + "app_consent_unapproved_title": "Cette application n’a pas encore été examinée ni approuvée par Plane.", + "app_consent_unapproved_description": "Assurez-vous de faire confiance à cette application avant de la connecter à votre espace de travail.", + "go_to_app": "Aller à l’application", "enable_app_mentions": "Activer les mentions de l'application", "enable_app_mentions_tooltip": "Lorsque cela est activé, les utilisateurs peuvent mentionner ou attribuer des éléments de travail à cette application.", "scopes": "Périmètres", @@ -435,13 +472,18 @@ "profile": "Accès aux informations du profil utilisateur", "agents": "Accès aux agents et à toutes les entités liées aux agents", "assets": "Accès aux actifs et à toutes les entités liées aux actifs" - }, - "internal": "Interne" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Voir votre travail devenir plus intelligent et plus rapide avec l'IA qui est connectée de manière native à votre travail et à votre base de connaissances." + }, + "runners": { + "title": "Plane Runner", + "heading": "Scripts", + "new_script": "Nouveau script", + "description": "Automatisez vos flux de travail avec des scripts personnalisés et des règles d’automatisation." } }, "empty_state": { diff --git a/packages/i18n/src/locales/fr/workspace.json b/packages/i18n/src/locales/fr/workspace.json index c375655eda5..088f7b54e78 100644 --- a/packages/i18n/src/locales/fr/workspace.json +++ b/packages/i18n/src/locales/fr/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Scope et Demande", "custom": "Analytique Personnalisée" }, + "total": "Total des {entity}", + "started_work_items": "{entity} commencés", + "backlog_work_items": "{entity} en backlog", + "un_started_work_items": "{entity} non commencés", + "completed_work_items": "{entity} terminés", + "project_insights": "Aperçus du projet", + "summary_of_projects": "Résumé des projets", + "all_projects": "Tous les projets", + "trend_on_charts": "Tendance sur les graphiques", + "active_projects": "Projets actifs", + "customized_insights": "Informations personnalisées", + "created_vs_resolved": "Créé vs Résolu", "empty_state": { - "customized_insights": { - "description": "Les éléments de travail qui vous sont assignés, répartis par état, s’afficheront ici.", - "title": "Pas encore de données" + "project_insights": { + "title": "Pas encore de données", + "description": "Les éléments de travail qui vous sont assignés, répartis par état, s’afficheront ici." }, "created_vs_resolved": { - "description": "Les éléments de travail créés et résolus au fil du temps s’afficheront ici.", - "title": "Pas encore de données" + "title": "Pas encore de données", + "description": "Les éléments de travail créés et résolus au fil du temps s’afficheront ici." }, - "project_insights": { + "customized_insights": { "title": "Pas encore de données", "description": "Les éléments de travail qui vous sont assignés, répartis par état, s’afficheront ici." }, @@ -132,29 +144,11 @@ "description": "Les analyses des tendances d'entrée apparaîtront ici. Ajoutez des éléments de travail à l'entrée pour commencer à suivre les tendances." } }, - "created_vs_resolved": "Créé vs Résolu", - "customized_insights": "Informations personnalisées", - "backlog_work_items": "{entity} en backlog", - "active_projects": "Projets actifs", - "trend_on_charts": "Tendance sur les graphiques", - "all_projects": "Tous les projets", - "summary_of_projects": "Résumé des projets", - "project_insights": "Aperçus du projet", - "started_work_items": "{entity} commencés", - "total_work_items": "Total des {entity}", - "total_projects": "Total des projets", - "total_admins": "Total des administrateurs", - "total_users": "Nombre total d’utilisateurs", - "total_intake": "Revenu total", - "un_started_work_items": "{entity} non commencés", - "total_guests": "Nombre total d’invités", - "completed_work_items": "{entity} terminés", - "total": "Total des {entity}", + "upgrade_to_plan": "Passez à {plan} pour débloquer {tab}", + "workitem_resolved_vs_pending": "Éléments de travail résolus vs en attente", "projects_by_status": "Projets par statut", "active_users": "Utilisateurs actifs", - "intake_trends": "Tendances des admissions", - "workitem_resolved_vs_pending": "Éléments de travail résolus vs en attente", - "upgrade_to_plan": "Passez à {plan} pour débloquer {tab}" + "intake_trends": "Tendances des admissions" }, "workspace_projects": { "label": "{count, plural, one {Projet} other {Projets}}", @@ -162,6 +156,7 @@ "label": "Ajouter un Projet" }, "network": { + "label": "Réseau", "private": { "title": "Privé", "description": "Accessible uniquement sur invitation" @@ -317,6 +312,10 @@ "archived": { "title": "Pas encore de Pages archivées", "description": "Archivez les Pages qui ne sont pas dans votre radar. Accédez-y ici quand nécessaire." + }, + "shared": { + "title": "Pas encore de pages partagées", + "description": "Les pages que d’autres ont partagées avec vous apparaîtront ici." } } }, diff --git a/packages/i18n/src/locales/id/auth.json b/packages/i18n/src/locales/id/auth.json index efd6910fce6..4fa5a310a4f 100644 --- a/packages/i18n/src/locales/id/auth.json +++ b/packages/i18n/src/locales/id/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "nama@perusahaan.com", - "errors": { - "required": "Email wajib diisi", - "invalid": "Email tidak valid" - } - }, - "password": { - "label": "Password", - "set_password": "Atur password", - "placeholder": "Masukkan password", - "confirm_password": { - "label": "Konfirmasi password", - "placeholder": "Konfirmasi password" - }, - "current_password": { - "label": "Password saat ini" - }, - "new_password": { - "label": "Password baru", - "placeholder": "Masukkan password baru" - }, - "change_password": { - "label": { - "default": "Ubah password", - "submitting": "Mengubah password" - } - }, - "errors": { - "match": "Password tidak cocok", - "empty": "Silakan masukkan password anda", - "length": "Panjang password harus lebih dari 8 karakter", - "strength": { - "weak": "Password lemah", - "strong": "Password kuat" - } - }, - "submit": "Atur password", - "toast": { - "change_password": { - "success": { - "title": "Berhasil!", - "message": "Password berhasil diubah." - }, - "error": { - "title": "Error!", - "message": "Terjadi kesalahan. Silakan coba lagi." - } - } - } - }, - "unique_code": { - "label": "Kode unik", - "placeholder": "123456", - "paste_code": "Tempelkan kode yang dikirim ke email anda", - "requesting_new_code": "Meminta kode baru", - "sending_code": "Mengirim kode" - }, - "already_have_an_account": "Sudah punya akun?", - "login": "Masuk", - "create_account": "Buat akun", - "new_to_plane": "Baru di Plane?", - "back_to_sign_in": "Kembali ke halaman masuk", - "resend_in": "Kirim ulang dalam {seconds} detik", - "sign_in_with_unique_code": "Masuk dengan kode unik", - "forgot_password": "Lupa password?", - "username": { - "label": "Nama pengguna", - "placeholder": "Masukkan nama pengguna Anda" - } - }, - "sign_up": { - "header": { - "label": "Buat akun untuk mulai mengelola pekerjaan dengan tim anda.", - "step": { - "email": { - "header": "Daftar", - "sub_header": "" - }, - "password": { - "header": "Daftar", - "sub_header": "Daftar menggunakan kombinasi email-password." - }, - "unique_code": { - "header": "Daftar", - "sub_header": "Daftar menggunakan kode unik yang dikirim ke alamat email di atas." - } - } - }, - "errors": { - "password": { - "strength": "Coba atur password yang lebih kuat untuk melanjutkan" - } - } - }, - "sign_in": { - "header": { - "label": "Masuk untuk mulai mengelola pekerjaan dengan tim anda.", - "step": { - "email": { - "header": "Masuk atau daftar", - "sub_header": "" - }, - "password": { - "header": "Masuk atau daftar", - "sub_header": "Gunakan kombinasi email-password anda untuk masuk." - }, - "unique_code": { - "header": "Masuk atau daftar", - "sub_header": "Masuk menggunakan kode unik yang dikirim ke alamat email di atas." - } - } - } - }, - "forgot_password": { - "title": "Reset password anda", - "description": "Masukkan alamat email akun anda yang telah diverifikasi dan kami akan mengirimkan link reset password.", - "email_sent": "Kami telah mengirim link reset ke alamat email anda", - "send_reset_link": "Kirim link reset", - "errors": { - "smtp_not_enabled": "Kami melihat bahwa admin anda belum mengaktifkan SMTP, kami tidak dapat mengirimkan link reset password" - }, - "toast": { - "success": { - "title": "Email terkirim", - "message": "Periksa inbox anda untuk link reset password. Jika tidak muncul dalam beberapa menit, periksa folder spam." - }, - "error": { - "title": "Error!", - "message": "Terjadi kesalahan. Silakan coba lagi." - } - } - }, - "reset_password": { - "title": "Atur password baru", - "description": "Amankan akun anda dengan password yang kuat" - }, - "set_password": { - "title": "Amankan akun anda", - "description": "Mengatur password membantu anda masuk dengan aman" - }, - "sign_out": { - "toast": { - "error": { - "title": "Error!", - "message": "Gagal keluar. Silakan coba lagi." - } - } - }, - "ldap": { - "header": { - "label": "Lanjutkan dengan {ldapProviderName}", - "sub_header": "Masukkan kredensial {ldapProviderName} Anda" - } - } - }, "sso": { "header": "Identitas", "description": "Konfigurasi domain Anda untuk mengakses fitur keamanan termasuk single sign-on.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "nama@perusahaan.com", + "errors": { + "required": "Email wajib diisi", + "invalid": "Email tidak valid" + } + }, + "password": { + "label": "Password", + "set_password": "Atur password", + "placeholder": "Masukkan password", + "confirm_password": { + "label": "Konfirmasi password", + "placeholder": "Konfirmasi password" + }, + "current_password": { + "label": "Password saat ini" + }, + "new_password": { + "label": "Password baru", + "placeholder": "Masukkan password baru" + }, + "change_password": { + "label": { + "default": "Ubah password", + "submitting": "Mengubah password" + } + }, + "errors": { + "match": "Password tidak cocok", + "empty": "Silakan masukkan password anda", + "length": "Panjang password harus lebih dari 8 karakter", + "strength": { + "weak": "Password lemah", + "strong": "Password kuat" + } + }, + "submit": "Atur password", + "toast": { + "change_password": { + "success": { + "title": "Berhasil!", + "message": "Password berhasil diubah." + }, + "error": { + "title": "Error!", + "message": "Terjadi kesalahan. Silakan coba lagi." + } + } + } + }, + "unique_code": { + "label": "Kode unik", + "placeholder": "123456", + "paste_code": "Tempelkan kode yang dikirim ke email anda", + "requesting_new_code": "Meminta kode baru", + "sending_code": "Mengirim kode" + }, + "already_have_an_account": "Sudah punya akun?", + "login": "Masuk", + "create_account": "Buat akun", + "new_to_plane": "Baru di Plane?", + "back_to_sign_in": "Kembali ke halaman masuk", + "resend_in": "Kirim ulang dalam {seconds} detik", + "sign_in_with_unique_code": "Masuk dengan kode unik", + "forgot_password": "Lupa password?", + "username": { + "label": "Nama pengguna", + "placeholder": "Masukkan nama pengguna Anda" + } + }, + "sign_up": { + "header": { + "label": "Buat akun untuk mulai mengelola pekerjaan dengan tim anda.", + "step": { + "email": { + "header": "Daftar", + "sub_header": "" + }, + "password": { + "header": "Daftar", + "sub_header": "Daftar menggunakan kombinasi email-password." + }, + "unique_code": { + "header": "Daftar", + "sub_header": "Daftar menggunakan kode unik yang dikirim ke alamat email di atas." + } + } + }, + "errors": { + "password": { + "strength": "Coba atur password yang lebih kuat untuk melanjutkan" + } + } + }, + "sign_in": { + "header": { + "label": "Masuk untuk mulai mengelola pekerjaan dengan tim anda.", + "step": { + "email": { + "header": "Masuk atau daftar", + "sub_header": "" + }, + "password": { + "header": "Masuk atau daftar", + "sub_header": "Gunakan kombinasi email-password anda untuk masuk." + }, + "unique_code": { + "header": "Masuk atau daftar", + "sub_header": "Masuk menggunakan kode unik yang dikirim ke alamat email di atas." + } + } + } + }, + "forgot_password": { + "title": "Reset password anda", + "description": "Masukkan alamat email akun anda yang telah diverifikasi dan kami akan mengirimkan link reset password.", + "email_sent": "Kami telah mengirim link reset ke alamat email anda", + "send_reset_link": "Kirim link reset", + "errors": { + "smtp_not_enabled": "Kami melihat bahwa admin anda belum mengaktifkan SMTP, kami tidak dapat mengirimkan link reset password" + }, + "toast": { + "success": { + "title": "Email terkirim", + "message": "Periksa inbox anda untuk link reset password. Jika tidak muncul dalam beberapa menit, periksa folder spam." + }, + "error": { + "title": "Error!", + "message": "Terjadi kesalahan. Silakan coba lagi." + } + } + }, + "reset_password": { + "title": "Atur password baru", + "description": "Amankan akun anda dengan password yang kuat" + }, + "set_password": { + "title": "Amankan akun anda", + "description": "Mengatur password membantu anda masuk dengan aman" + }, + "sign_out": { + "toast": { + "error": { + "title": "Error!", + "message": "Gagal keluar. Silakan coba lagi." + } + } + }, + "ldap": { + "header": { + "label": "Lanjutkan dengan {ldapProviderName}", + "sub_header": "Masukkan kredensial {ldapProviderName} Anda" + } + } } } diff --git a/packages/i18n/src/locales/id/automation.json b/packages/i18n/src/locales/id/automation.json index d37afd2c8dd..2fd8636f83e 100644 --- a/packages/i18n/src/locales/id/automation.json +++ b/packages/i18n/src/locales/id/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Kembali", "next": "Tambah aksi" + }, + "warning": { + "disabled_trigger_switching": "Anda tidak dapat mengubah jenis pemicu setelah dibuat" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Pilih opsi", "handler_name": { "add_comment": "Tambah komentar", - "change_property": "Ubah properti" + "change_property": "Ubah properti", + "run_script": "Jalankan Skrip" }, "configuration": { "label": "Konfigurasi", @@ -89,6 +93,9 @@ "comment_block": { "title": "Tambah komentar" }, + "run_script_block": { + "title": "Jalankan skrip" + }, "change_property_block": { "title": "Ubah properti" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Judul otomatisasi", + "scope": "Cakupan", + "projects": "Proyek", "last_run_on": "Terakhir dijalankan pada", "created_on": "Dibuat pada", "last_updated_on": "Terakhir diperbarui pada", @@ -230,6 +239,35 @@ "description": "Otomatisasi adalah cara untuk mengotomatisasi tugas dalam proyek Anda.", "sub_description": "Dapatkan kembali 80% waktu admin Anda ketika menggunakan Otomatisasi." } + }, + "global_automations": { + "project_select": { + "label": "Pilih proyek untuk menjalankan otomatisasi ini", + "all_projects": { + "label": "Semua proyek", + "description": "Otomatisasi akan berjalan untuk semua proyek di ruang kerja." + }, + "select_projects": { + "label": "Pilih proyek", + "description": "Otomatisasi akan berjalan untuk proyek yang dipilih di ruang kerja.", + "placeholder": "Pilih proyek" + } + }, + "settings": { + "sidebar_label": "Otomatisasi", + "title": "Otomatisasi", + "description": "Standarisasi proses di seluruh ruang kerja Anda dengan otomatisasi global." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Proyek", + "multiple": "Beberapa", + "all": "Semua" + } + } + } } } } diff --git a/packages/i18n/src/locales/id/common.json b/packages/i18n/src/locales/id/common.json index ee0bb06411c..7d266850dc4 100644 --- a/packages/i18n/src/locales/id/common.json +++ b/packages/i18n/src/locales/id/common.json @@ -17,6 +17,7 @@ "no": "Tidak", "ok": "OK", "name": "Nama", + "unknown_user": "Pengguna tidak dikenal", "description": "Deskripsi", "search": "Cari", "add_member": "Tambah anggota", @@ -56,7 +57,8 @@ "no_worklogs": "Belum ada catatan kerja", "no_history": "Belum ada riwayat" }, - "appearance": "Tampilan", + "preferences": "Preferensi", + "language_and_time": "Bahasa & Waktu", "notifications": "Notifikasi", "workspaces": "Ruang kerja", "create_workspace": "Buat ruang kerja", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Terjadi kesalahan. Silakan coba lagi.", "load_more": "Muat lebih banyak", "select_or_customize_your_interface_color_scheme": "Pilih atau sesuaikan skema warna antarmuka Anda.", + "timezone_setting": "Pengaturan zona waktu saat ini.", + "language_setting": "Pilih bahasa yang digunakan di antarmuka pengguna.", + "settings_moved_to_preferences": "Pengaturan Zona waktu & Bahasa telah dipindahkan ke preferensi.", + "go_to_preferences": "Buka preferensi", "select_the_cursor_motion_style_that_feels_right_for_you": "Pilih gaya gerakan kursor yang terasa tepat untuk Anda.", "theme": "Tema", "smooth_cursor": "Kursor Halus", @@ -163,6 +169,7 @@ "project_created_successfully": "Proyek berhasil dibuat", "project_created_successfully_description": "Proyek berhasil dibuat. Anda sekarang dapat mulai menambahkan item kerja ke dalamnya.", "project_name_already_taken": "Nama proyek sudah digunakan", + "project_name_cannot_contain_special_characters": "Nama proyek tidak boleh mengandung karakter khusus.", "project_identifier_already_taken": "ID proyek sudah digunakan", "project_cover_image_alt": "Gambar sampul proyek", "name_is_required": "Nama diperlukan", @@ -207,6 +214,7 @@ "issues": "Item kerja", "cycles": "Siklus", "modules": "Modul", + "pages": "Halaman", "intake": "Penerimaan", "renew": "Perpanjang", "preview": "Pratinjau", @@ -298,6 +306,7 @@ "start_date": "Tanggal mulai", "end_date": "Tanggal akhir", "due_date": "Tanggal jatuh tempo", + "target_date": "Tanggal target", "estimate": "Perkiraan", "change_parent_issue": "Ubah item kerja induk", "remove_parent_issue": "Hapus item kerja induk", @@ -354,6 +363,10 @@ "export": "Ekspor", "member": "{count, plural, one{# anggota} other{# anggota}}", "new_password_must_be_different_from_old_password": "Kata sandi baru harus berbeda dari kata sandi lama", + "edited": "disunting", + "bot": "Bot", + "settings_description": "Kelola akun, ruang kerja, dan preferensi proyek Anda di satu tempat. Beralih antar tab untuk mengonfigurasi dengan mudah.", + "back_to_workspace": "Kembali ke ruang kerja", "upgrade_request": "Minta Admin Ruang Kerja untuk meningkatkan.", "copied_to_clipboard": "Disalin ke clipboard", "copied_to_clipboard_description": "URL berhasil disalin ke clipboard Anda", @@ -420,6 +433,9 @@ "modules": "Modul", "labels": "Label", "label": "Label", + "admins": "Admin", + "users": "Pengguna", + "guests": "Tamu", "assignees": "Penugas", "assignee": "Penugas", "created_by": "Dibuat oleh", @@ -449,6 +465,8 @@ "work_item": "Item kerja", "work_items": "Item kerja", "sub_work_item": "Sub-item kerja", + "views": "Tampilan", + "pages": "Halaman", "add": "Tambah", "warning": "Peringatan", "updating": "Memperbarui", @@ -494,7 +512,7 @@ "workspace_level": "Tingkat ruang kerja", "order_by": { "label": "Urutkan berdasarkan", - "manual": "Manual", + "manual": "Manual - Peringkat", "last_created": "Terakhir dibuat", "last_updated": "Terakhir diperbarui", "start_date": "Tanggal mulai", @@ -530,6 +548,7 @@ "continue": "Lanjutkan", "resend": "Kirim ulang", "relations": "Hubungan", + "dependencies": "Ketergantungan", "errors": { "default": { "title": "Kesalahan!", @@ -561,11 +580,27 @@ "quarter": "Kuartal", "press_for_commands": "Tekan '/' untuk perintah", "click_to_add_description": "Klik untuk menambahkan deskripsi", + "on_track": "Sesuai Jalur", + "off_track": "Menyimpang", + "at_risk": "Dalam risiko", + "timeline": "Linimasa", + "completion": "Penyelesaian", + "upcoming": "Mendatang", + "completed": "Selesai", + "in_progress": "Sedang berlangsung", + "planned": "Direncanakan", + "paused": "Dijedaikan", "search": { "label": "Pencarian", "placeholder": "Ketik untuk mencari", "no_matches_found": "Tidak ada kecocokan ditemukan", - "no_matching_results": "Tidak ada hasil yang cocok" + "no_matching_results": "Tidak ada hasil yang cocok", + "min_chars": "Ketik setidaknya {count} karakter untuk mencari", + "error": "Terjadi kesalahan saat mengambil hasil pencarian", + "no_results": { + "title": "Tidak ada hasil yang cocok", + "description": "Hapus kriteria pencarian untuk melihat semua hasil" + } }, "actions": { "edit": "Edit", @@ -582,7 +617,9 @@ "clear_sorting": "Hapus pengurutan", "show_weekends": "Tampilkan akhir pekan", "enable": "Aktifkan", - "disable": "Nonaktifkan" + "disable": "Nonaktifkan", + "copy_markdown": "Salin markdown", + "reply": "Balas" }, "name": "Nama", "discard": "Buang", @@ -595,6 +632,7 @@ "disabled": "Dinonaktifkan", "mandate": "Mandat", "mandatory": "Wajib", + "global": "Global", "yes": "Ya", "no": "Tidak", "please_wait": "Silakan tunggu", @@ -604,6 +642,7 @@ "or": "atau", "next": "Selanjutnya", "back": "Kembali", + "retry": "Coba lagi", "cancelling": "Membatalkan", "configuring": "Mengkonfigurasi", "clear": "Bersihkan", @@ -658,31 +697,27 @@ "deactivated_user": "Pengguna dinonaktifkan", "apply": "Terapkan", "applying": "Terapkan", - "users": "Pengguna", - "admins": "Admin", - "guests": "Tamu", - "on_track": "Sesuai Jalur", - "off_track": "Menyimpang", - "at_risk": "Dalam risiko", - "timeline": "Linimasa", - "completion": "Penyelesaian", - "upcoming": "Mendatang", - "completed": "Selesai", - "in_progress": "Sedang berlangsung", - "planned": "Direncanakan", - "paused": "Dijedaikan", + "overview": "Ikhtisar", "no_of": "Jumlah {entity}", "resolved": "Terselesaikan", + "get_started": "Mulai", "worklogs": "Log Kerja", "project_updates": "Pembaruan Proyek", - "overview": "Ikhtisar", "workflows": "Alur Kerja", "templates": "Templat", + "business": "Bisnis", "members_and_teamspaces": "Anggota & Teamspaces", + "recurring_work_items": "Item kerja berulang", + "milestones": "Tonggak", "open_in_full_screen": "Buka {page} dalam layar penuh", "details": "Detail", "project_structure": "Struktur proyek", - "custom_properties": "Properti kustom" + "custom_properties": "Properti kustom", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Sumbu-X", @@ -788,26 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane tidak berhasil dimulai. Ini bisa karena satu atau lebih layanan Plane gagal untuk dimulai.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Pilih View Logs dari setup.sh dan log Docker untuk memastikan." }, - "no_of": "Jumlah {entity}", + "customize_navigation": "Sesuaikan navigasi", + "personal": "Pribadi", + "accordion_navigation_control": "Navigasi sidebar akordeon", + "horizontal_navigation_bar": "Navigasi Tab", + "show_limited_projects_on_sidebar": "Tampilkan proyek terbatas di sidebar", + "enter_number_of_projects": "Masukkan jumlah proyek", + "pin": "Sematkan", + "unpin": "Lepas sematan", "workspace_dashboards": "Dasbor", "pi_chat": "Obrolan AI", "in_app": "Dalam Aplikasi", "forms": "Formulir", - "choose_workspace_for_integration": "Pilih ruang kerja untuk menghubungkan aplikasi ini", - "integrations_description": "Aplikasi yang bekerja dengan Plane harus menghubungkan ke ruang kerja di mana Anda adalah admin.", - "create_a_new_workspace": "Buat ruang kerja baru", - "learn_more_about_workspaces": "Pelajari lebih lanjut tentang ruang kerja", - "no_workspaces_to_connect": "Tidak ada ruang kerja untuk menghubungkan", - "no_workspaces_to_connect_description": "Anda perlu membuat ruang kerja untuk dapat menghubungkan integrasi dan template", + "milestones": "Tonggak", + "milestones_description": "Tonggak menyediakan lapisan untuk menyelaraskan item kerja menuju tanggal penyelesaian bersama.", "file_upload": { "upload_text": "Klik di sini untuk mengunggah file", "drag_drop_text": "Tarik dan Lepas", "processing": "Memproses", - "invalid": "Tipe file tidak valid", + "invalid_file_type": "Tipe file tidak valid", "missing_fields": "Bidang yang hilang", "success": "{fileName} Diunggah!" }, - "project_name_cannot_contain_special_characters": "Nama proyek tidak boleh mengandung karakter khusus.", "date": "Tanggal", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/id/editor.json b/packages/i18n/src/locales/id/editor.json index e32b88b21a1..ffdf9b0c0c8 100644 --- a/packages/i18n/src/locales/id/editor.json +++ b/packages/i18n/src/locales/id/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Silakan masukkan URL yang valid." } + }, + "ai_block": { + "content": { + "placeholder": "Deskripsikan konten blok ini", + "generated_here": "Konten AI Anda akan dihasilkan di sini" + }, + "block_types": { + "placeholder": "Pilih jenis blok", + "summarize_page": "Ringkas Halaman", + "custom_prompt": "Prompt Kustom" + }, + "actions": { + "discard": "Buang", + "generate": "Hasilkan", + "generating": "Menghasilkan", + "rewriting": "Menulis ulang", + "rewrite": "Tulis ulang", + "use_this": "Gunakan ini", + "refine": "Perbaiki" + } } } diff --git a/packages/i18n/src/locales/id/empty-state.json b/packages/i18n/src/locales/id/empty-state.json index 634bd4094cf..5c339ce2769 100644 --- a/packages/i18n/src/locales/id/empty-state.json +++ b/packages/i18n/src/locales/id/empty-state.json @@ -249,10 +249,22 @@ "title": "Lacak lembar waktu untuk semua anggota", "description": "Catat waktu pada item kerja untuk melihat lembar waktu terperinci untuk anggota tim mana pun di seluruh proyek." }, + "group_syncing": { + "title": "Belum ada pemetaan grup" + }, "template_setting": { "title": "Belum ada templat", "description": "Kurangi waktu pengaturan dengan membuat templat untuk proyek, item kerja, dan halaman — dan mulai pekerjaan baru dalam hitungan detik.", "cta_primary": "Buat templat" + }, + "workflows": { + "title": "Belum ada alur kerja", + "description": "Buat alur kerja untuk mengelola kemajuan item kerja Anda.", + "cta_primary": "Tambah alur kerja baru", + "states": { + "title": "Tambah status", + "description": "Pilih status yang dilalui item kerja." + } } } } diff --git a/packages/i18n/src/locales/id/integration.json b/packages/i18n/src/locales/id/integration.json index 9564fc4f3c6..62cd96859da 100644 --- a/packages/i18n/src/locales/id/integration.json +++ b/packages/i18n/src/locales/id/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Kesalahan server saat memuat status" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Hubungkan dan sinkronkan repositori Bitbucket Data Center Anda dengan Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Validasi token IdP eksternal untuk akses API.", @@ -302,6 +306,7 @@ "generic_error": "Terjadi kesalahan tak terduga saat memproses permintaan Anda", "connection_not_found": "Koneksi yang diminta tidak dapat ditemukan", "multiple_connections_found": "Beberapa koneksi ditemukan saat hanya satu yang diharapkan", + "cannot_create_multiple_connections": "Anda telah menghubungkan organisasi Anda dengan ruang kerja. Silakan putuskan koneksi yang ada sebelum menghubungkan yang baru.", "installation_not_found": "Instalasi yang diminta tidak dapat ditemukan", "user_not_found": "Pengguna yang diminta tidak dapat ditemukan", "error_fetching_token": "Gagal mengambil token autentikasi", @@ -315,6 +320,7 @@ "pulling": "Menarik", "timed_out": "Waktu habis", "pulled": "Ditarik", + "progressing": "Berjalan", "transforming": "Mentransformasi", "transformed": "Ditransformasi", "pushing": "Mendorong", diff --git a/packages/i18n/src/locales/id/module.json b/packages/i18n/src/locales/id/module.json index 58b9d5b6f39..80849ece234 100644 --- a/packages/i18n/src/locales/id/module.json +++ b/packages/i18n/src/locales/id/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modul} other {Modul}}", - "no_module": "Tidak ada modul" + "no_module": "Tidak ada modul", + "select": "Tambah modul" } } diff --git a/packages/i18n/src/locales/id/navigation.json b/packages/i18n/src/locales/id/navigation.json index 9c7e1563dd0..4a77755fe11 100644 --- a/packages/i18n/src/locales/id/navigation.json +++ b/packages/i18n/src/locales/id/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Tidak ada hasil ditemukan" + } + } + }, "sidebar": { + "stickies": "Stickies", + "your_work": "Pekerjaan anda", "projects": "Projek", "pages": "Halaman", "new_work_item": "Item kerja baru", "home": "Beranda", - "your_work": "Pekerjaan anda", "inbox": "Inbox", "workspace": "Workspace", "views": "Views", @@ -21,14 +29,6 @@ "epics": "Epics", "upgrade_plan": "Tingkatkan paket", "plane_pro": "Plane Pro", - "business": "Bisnis", - "recurring_work_items": "Tugas Berulang" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Tidak ada hasil ditemukan" - } - } + "business": "Bisnis" } } diff --git a/packages/i18n/src/locales/id/page.json b/packages/i18n/src/locales/id/page.json index 15d12b8503c..3e6fcdb3b0e 100644 --- a/packages/i18n/src/locales/id/page.json +++ b/packages/i18n/src/locales/id/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Menghubungkan halaman", - "show_wiki_pages": "Tampilkan halaman wiki", - "link_pages_to": "Menghubungkan halaman ke", - "linked_pages": "Halaman yang terhubung", - "no_description": "Halaman ini kosong. Tulis sesuatu di sini dan lihatnya di sini sebagai placeholder", - "toasts": { - "link": { - "success": { - "title": "Halaman diperbarui", - "message": "Halaman berhasil diperbarui" - }, - "error": { - "title": "Halaman tidak diperbarui", - "message": "Halaman tidak dapat diperbarui" - } - }, - "remove": { - "success": { - "title": "Halaman dihapus", - "message": "Halaman berhasil dihapus" - }, - "error": { - "title": "Halaman tidak dihapus", - "message": "Halaman tidak dapat dihapus" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Gambar hilang", "description": "Tambahkan gambar untuk melihatnya di sini." } + }, + "comments": { + "label": "Komentar", + "empty_state": { + "title": "Tidak ada komentar", + "description": "Tambahkan komentar untuk melihatnya di sini." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Nama sticky tidak boleh lebih dari 100 karakter.", + "already_exists": "Sudah ada sticky tanpa deskripsi" + }, + "created": { + "title": "Sticky dibuat", + "message": "Sticky berhasil dibuat" + }, + "not_created": { + "title": "Sticky tidak dibuat", + "message": "Sticky tidak dapat dibuat" + }, + "updated": { + "title": "Sticky diperbarui", + "message": "Sticky berhasil diperbarui" + }, + "not_updated": { + "title": "Sticky tidak diperbarui", + "message": "Sticky tidak dapat diperbarui" + }, + "removed": { + "title": "Sticky dihapus", + "message": "Sticky berhasil dihapus" + }, + "not_removed": { + "title": "Sticky tidak dihapus", + "message": "Sticky tidak dapat dihapus" } }, "open_button": "Buka panel navigasi", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Pindahkan", + "loading": "Memindahkan" + }, + "cannot_move_to_teamspace": "Halaman pribadi dan yang dibagikan tidak dapat dipindahkan ke teamspace.", "placeholders": { + "workspace_to_all": "Cari proyek dan teamspace", + "workspace_to_project": "Cari proyek", + "project_to_all": "Cari proyek dan teamspace", + "project_to_project": "Cari proyek", "project_to_all_with_wiki": "Cari koleksi wiki, proyek, dan teamspace", "project_to_project_with_wiki": "Cari koleksi wiki dan proyek" }, "toasts": { + "success": { + "title": "Berhasil!", + "message": "Halaman berhasil dipindahkan." + }, + "error": { + "title": "Error!", + "message": "Halaman tidak dapat dipindahkan. Silakan coba lagi nanti." + }, "collection_error": { "title": "Dipindahkan ke wiki", "message": "Halaman dipindahkan ke wiki, tetapi tidak dapat ditambahkan ke koleksi yang dipilih. Halaman tetap berada di General." diff --git a/packages/i18n/src/locales/id/project-settings.json b/packages/i18n/src/locales/id/project-settings.json index dd51e014900..b5ac935bf7c 100644 --- a/packages/i18n/src/locales/id/project-settings.json +++ b/packages/i18n/src/locales/id/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Anggota", "project_lead": "Pemimpin proyek", + "project_lead_description": "Pilih pimpinan proyek untuk proyek ini.", "default_assignee": "Penugas default", + "default_assignee_description": "Pilih penerima tugas default untuk proyek ini.", + "project_subscribers": "Pelanggan proyek", + "project_subscribers_description": "Pilih anggota yang akan menerima notifikasi untuk proyek ini.", "guest_super_permissions": { "title": "Beri akses tampilan untuk semua item kerja untuk pengguna tamu:", "sub_heading": "Ini akan memungkinkan tamu untuk memiliki akses tampilan ke semua item kerja proyek." @@ -30,13 +34,11 @@ "title": "Undang anggota", "sub_heading": "Undang anggota untuk bekerja di proyek Anda.", "select_co_worker": "Pilih rekan kerja" - }, - "project_lead_description": "Pilih pimpinan proyek untuk proyek ini.", - "default_assignee_description": "Pilih penerima tugas default untuk proyek ini.", - "project_subscribers": "Pelanggan proyek", - "project_subscribers_description": "Pilih anggota yang akan menerima notifikasi untuk proyek ini." + } }, "states": { + "heading": "Status", + "description": "Tentukan dan sesuaikan status alur kerja untuk melacak kemajuan item kerja Anda.", "describe_this_state_for_your_members": "Jelaskan status ini untuk anggota Anda.", "empty_state": { "title": "Tidak ada status yang tersedia untuk grup {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Label", + "description": "Buat label kustom untuk mengkategorikan dan mengatur item kerja Anda", "label_title": "Judul label", "label_title_is_required": "Judul label diperlukan", "label_max_char": "Nama label tidak boleh lebih dari 255 karakter", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Perkiraan", + "description": "Ini membantu Anda dalam mengkomunikasikan kompleksitas dan beban kerja tim.", "label": "Perkiraan", "title": "Aktifkan perkiraan untuk proyek saya", - "description": "Ini membantu Anda dalam mengkomunikasikan kompleksitas dan beban kerja tim.", + "enable_description": "Ini membantu Anda dalam mengkomunikasikan kompleksitas dan beban kerja tim.", "no_estimate": "Tidak ada perkiraan", "new": "Sistem perkiraan baru", "create": { @@ -112,6 +118,16 @@ "title": "Pengurutan ulang estimasi gagal", "message": "Kami tidak dapat mengurutkan ulang estimasi, silakan coba lagi" } + }, + "switch": { + "success": { + "title": "Sistem estimasi dibuat", + "message": "Berhasil dibuat dan diaktifkan" + }, + "error": { + "title": "Kesalahan", + "message": "Terjadi kesalahan" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Otomatisasi", + "heading": "Otomatisasi", + "description": "Konfigurasikan aksi otomatis untuk menyederhanakan alur kerja manajemen proyek Anda dan mengurangi tugas manual.", "auto-archive": { "title": "Arsip otomatis item kerja yang ditutup", "description": "Plane akan mengarsipkan secara otomatis item kerja yang telah selesai atau dibatalkan.", @@ -194,90 +212,116 @@ "description": "Konfigurasikan GitHub dan integrasi lainnya untuk menyinkronkan item kerja proyek Anda." } }, - "cycles": { - "auto_schedule": { - "heading": "Penjadwalan otomatis siklus", - "description": "Jaga agar siklus tetap berjalan tanpa pengaturan manual.", - "tooltip": "Buat siklus baru secara otomatis berdasarkan jadwal yang Anda pilih.", - "edit_button": "Edit", - "form": { - "cycle_title": { - "label": "Judul siklus", - "placeholder": "Judul", - "tooltip": "Judul akan ditambahkan dengan nomor untuk siklus berikutnya. Misalnya: Desain - 1/2/3", - "validation": { - "required": "Judul siklus wajib diisi", - "max_length": "Judul tidak boleh melebihi 255 karakter" - } - }, - "cycle_duration": { - "label": "Durasi siklus", - "unit": "Minggu", - "validation": { - "required": "Durasi siklus wajib diisi", - "min": "Durasi siklus harus minimal 1 minggu", - "max": "Durasi siklus tidak boleh melebihi 30 minggu", - "positive": "Durasi siklus harus positif" - } - }, - "cooldown_period": { - "label": "Periode pendinginan", - "unit": "hari", - "tooltip": "Jeda antara siklus sebelum siklus berikutnya dimulai.", - "validation": { - "required": "Periode pendinginan wajib diisi", - "negative": "Periode pendinginan tidak boleh negatif" - } - }, - "start_date": { - "label": "Hari mulai siklus", - "validation": { - "required": "Tanggal mulai wajib diisi", - "past": "Tanggal mulai tidak boleh di masa lalu" - } + "workflows": { + "toggle": { + "title": "Aktifkan alur kerja", + "description": "Atur alur kerja untuk mengontrol pergerakan item kerja", + "no_states_tooltip": "Tidak ada status yang ditambahkan ke alur kerja.", + "no_work_item_types_tooltip": "Tidak ada tipe item kerja yang ditambahkan ke alur kerja.", + "no_states_or_work_item_types_tooltip": "Tidak ada status atau tipe item kerja yang ditambahkan ke alur kerja.", + "toast": { + "loading": { + "enabling": "Mengaktifkan alur kerja", + "disabling": "Menonaktifkan alur kerja" }, - "number_of_cycles": { - "label": "Jumlah siklus mendatang", - "validation": { - "required": "Jumlah siklus wajib diisi", - "min": "Setidaknya 1 siklus diperlukan", - "max": "Tidak dapat menjadwalkan lebih dari 3 siklus" - } + "success": { + "title": "Berhasil!", + "message": "Alur kerja berhasil diaktifkan." }, - "auto_rollover": { - "label": "Pemindahan otomatis item pekerjaan", - "tooltip": "Pada hari siklus selesai, pindahkan semua item pekerjaan yang belum selesai ke siklus berikutnya." + "error": { + "title": "Error!", + "message": "Gagal mengaktifkan alur kerja. Silakan coba lagi." + } + } + }, + "heading": "Alur Kerja", + "description": "Otomatisasi transisi item kerja dan tetapkan aturan untuk mengontrol bagaimana tugas berpindah melalui pipeline proyek Anda.", + "add_button": "Tambah alur kerja baru", + "search": "Cari alur kerja", + "detail": { + "define": "Tentukan alur kerja", + "add_states": "Tambah status", + "unmapped_states": { + "title": "Status tak terpetakan terdeteksi", + "description": "Beberapa item kerja untuk tipe yang dipilih saat ini berada dalam status yang tidak ada dalam alur kerja ini.", + "note": "Jika Anda mengaktifkan alur kerja ini, item ini akan otomatis dipindahkan ke status awal untuk alur kerja ini.", + "label": "Status hilang", + "tooltip": "Beberapa item kerja berada dalam status yang tidak dipetakan ke alur kerja ini. Buka alur kerja untuk meninjau." + } + }, + "select_states": { + "empty_state": { + "title": "Semua status sedang digunakan", + "description": "Semua status yang ditentukan untuk proyek ini sudah ada dalam alur kerja Anda saat ini." + } + }, + "default_footer": { + "fallback_message": "Alur kerja ini berlaku untuk tipe item kerja apa pun yang tidak ditetapkan ke alur kerja." + }, + "create": { + "heading": "Buat alur kerja baru", + "name": { + "placeholder": "Tambah nama unik", + "validation": { + "max_length": "Nama harus kurang dari 255 karakter", + "required": "Nama diperlukan", + "invalid": "Nama hanya boleh berisi huruf, angka, spasi, tanda hubung, dan apostrof" } }, - "toast": { - "toggle": { - "loading_enable": "Mengaktifkan penjadwalan otomatis siklus", - "loading_disable": "Menonaktifkan penjadwalan otomatis siklus", - "success": { - "title": "Berhasil!", - "message": "Penjadwalan otomatis siklus berhasil diaktifkan." - }, - "error": { - "title": "Kesalahan!", - "message": "Gagal mengaktifkan penjadwalan otomatis siklus." - } - }, - "save": { - "loading": "Menyimpan konfigurasi penjadwalan otomatis siklus", - "success": { - "title": "Berhasil!", - "message_create": "Konfigurasi penjadwalan otomatis siklus berhasil disimpan.", - "message_update": "Konfigurasi penjadwalan otomatis siklus berhasil diperbarui." - }, - "error": { - "title": "Kesalahan!", - "message_create": "Gagal menyimpan konfigurasi penjadwalan otomatis siklus.", - "message_update": "Gagal memperbarui konfigurasi penjadwalan otomatis siklus." - } + "description": { + "placeholder": "Tambah deskripsi singkat", + "validation": { + "invalid": "Deskripsi hanya boleh berisi huruf, angka, spasi, tanda hubung, dan apostrof" } + }, + "work_item_type": { + "label": "Tipe item kerja" + }, + "success": { + "title": "Berhasil!", + "message": "Alur kerja berhasil dibuat." + }, + "error": { + "title": "Error!", + "message": "Gagal membuat alur kerja. Silakan coba lagi." + } + }, + "update": { + "success": { + "title": "Berhasil!", + "message": "Alur kerja berhasil diperbarui." + }, + "error": { + "title": "Error!", + "message": "Gagal memperbarui alur kerja. Silakan coba lagi." + } + }, + "delete": { + "loading": "Menghapus alur kerja", + "success": { + "title": "Berhasil!", + "message": "Alur kerja berhasil dihapus." + }, + "error": { + "title": "Error!", + "message": "Gagal menghapus alur kerja. Silakan coba lagi." + } + }, + "add_states": { + "success": { + "title": "Berhasil!", + "message": "Status berhasil ditambahkan." + }, + "error": { + "title": "Error!", + "message": "Gagal menambahkan status. Silakan coba lagi." } } }, + "work_item_types": { + "heading": "Tipe item kerja", + "description": "Buat dan sesuaikan berbagai tipe item kerja dengan properti unik" + }, "features": { "cycles": { "title": "Siklus", @@ -385,6 +429,98 @@ "success": "Fitur proyek berhasil diperbarui.", "error": "Terjadi kesalahan saat memperbarui fitur proyek. Silakan coba lagi." } + }, + "project_updates": { + "heading": "Pembaruan Proyek", + "description": "Pelacakan terpadu dan pemantauan kemajuan untuk proyek ini" + }, + "templates": { + "heading": "Templat", + "description": "Hemat 80% waktu yang dihabiskan untuk membuat proyek, item kerja, dan halaman saat Anda menggunakan templat." + }, + "cycles": { + "auto_schedule": { + "heading": "Penjadwalan otomatis siklus", + "description": "Jaga agar siklus tetap berjalan tanpa pengaturan manual.", + "tooltip": "Buat siklus baru secara otomatis berdasarkan jadwal yang Anda pilih.", + "edit_button": "Edit", + "form": { + "cycle_title": { + "label": "Judul siklus", + "placeholder": "Judul", + "tooltip": "Judul akan ditambahkan dengan nomor untuk siklus berikutnya. Misalnya: Desain - 1/2/3", + "validation": { + "required": "Judul siklus wajib diisi", + "max_length": "Judul tidak boleh melebihi 255 karakter" + } + }, + "cycle_duration": { + "label": "Durasi siklus", + "unit": "Minggu", + "validation": { + "required": "Durasi siklus wajib diisi", + "min": "Durasi siklus harus minimal 1 minggu", + "max": "Durasi siklus tidak boleh melebihi 30 minggu", + "positive": "Durasi siklus harus positif" + } + }, + "cooldown_period": { + "label": "Periode pendinginan", + "unit": "hari", + "tooltip": "Jeda antara siklus sebelum siklus berikutnya dimulai.", + "validation": { + "required": "Periode pendinginan wajib diisi", + "negative": "Periode pendinginan tidak boleh negatif" + } + }, + "start_date": { + "label": "Hari mulai siklus", + "validation": { + "required": "Tanggal mulai wajib diisi", + "past": "Tanggal mulai tidak boleh di masa lalu" + } + }, + "number_of_cycles": { + "label": "Jumlah siklus mendatang", + "validation": { + "required": "Jumlah siklus wajib diisi", + "min": "Setidaknya 1 siklus diperlukan", + "max": "Tidak dapat menjadwalkan lebih dari 3 siklus" + } + }, + "auto_rollover": { + "label": "Pemindahan otomatis item pekerjaan", + "tooltip": "Pada hari siklus selesai, pindahkan semua item pekerjaan yang belum selesai ke siklus berikutnya." + } + }, + "toast": { + "toggle": { + "loading_enable": "Mengaktifkan penjadwalan otomatis siklus", + "loading_disable": "Menonaktifkan penjadwalan otomatis siklus", + "success": { + "title": "Berhasil!", + "message": "Penjadwalan otomatis siklus berhasil diaktifkan." + }, + "error": { + "title": "Kesalahan!", + "message": "Gagal mengaktifkan penjadwalan otomatis siklus." + } + }, + "save": { + "loading": "Menyimpan konfigurasi penjadwalan otomatis siklus", + "success": { + "title": "Berhasil!", + "message_create": "Konfigurasi penjadwalan otomatis siklus berhasil disimpan.", + "message_update": "Konfigurasi penjadwalan otomatis siklus berhasil diperbarui." + }, + "error": { + "title": "Kesalahan!", + "message_create": "Gagal menyimpan konfigurasi penjadwalan otomatis siklus.", + "message_update": "Gagal memperbarui konfigurasi penjadwalan otomatis siklus." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/id/project.json b/packages/i18n/src/locales/id/project.json index 62119237db2..5c60f89dac9 100644 --- a/packages/i18n/src/locales/id/project.json +++ b/packages/i18n/src/locales/id/project.json @@ -16,10 +16,15 @@ "remove_filters_to_see_all_cycles": "Hapus filter untuk melihat semua siklus", "remove_search_criteria_to_see_all_cycles": "Hapus kriteria pencarian untuk melihat semua siklus", "only_completed_cycles_can_be_archived": "Hanya siklus yang diselesaikan yang dapat diarsipkan", + "start_date": "Tanggal mulai", + "end_date": "Tanggal akhir", + "in_your_timezone": "Di zona waktu Anda", "transfer_work_items": "Transfer {count} item kerja", "transfer": { "no_cycles_available": "Tidak ada siklus lain yang tersedia untuk mentransfer item pekerjaan." }, + "date_range": "Rentang tanggal", + "add_date": "Tambah tanggal", "active_cycle": { "label": "Siklus aktif", "progress": "Kemajuan", @@ -131,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Simpan tampilan yang difilter untuk proyek Anda. Buat sebanyak yang Anda perlukan", + "description": "Tampilan adalah sekumpulan filter yang disimpan yang Anda gunakan secara sering atau ingin akses mudah. Semua rekan Anda dalam proyek dapat melihat tampilan semua orang dan memilih yang paling sesuai dengan kebutuhan mereka.", + "primary_button": { + "text": "Buat tampilan pertama Anda", + "comic": { + "title": "Tampilan bekerja berdasarkan properti item kerja.", + "description": "Anda dapat membuat tampilan dari sini dengan sebanyak mungkin properti sebagai filter yang Anda anggap sesuai." + } + }, + "filter": { + "title": "Tidak ada tampilan yang cocok", + "description": "Tidak ada tampilan yang cocok dengan kriteria pencarian.\n Buat tampilan baru sebagai gantinya." + } + }, + "no_archived_issues": { + "title": "Belum ada item kerja yang diarsipkan", + "description": "Secara manual atau melalui otomatisasi, Anda dapat mengarsipkan item kerja yang selesai atau dibatalkan. Temukan di sini setelah diarsipkan.", + "primary_button": { + "text": "Atur otomatisasi" + } + }, + "issues_empty_filter": { + "title": "Tidak ada item kerja yang ditemukan cocok dengan filter yang diterapkan", + "secondary_button": { + "text": "Hapus semua filter" + } + }, + "public": { + "title": "Belum ada halaman publik", + "description": "Lihat halaman yang dibagikan dengan semua orang di proyek Anda tepat di sini.", + "primary_button": { + "text": "Buat halaman pertama Anda" + } + }, + "archived": { + "title": "Belum ada halaman yang diarsipkan", + "description": "Arsipkan halaman yang tidak ada dalam radar Anda. Akses di sini saat diperlukan." + }, + "shared": { + "title": "Belum ada halaman yang dibagikan", + "description": "Halaman yang dibagikan orang lain kepada Anda akan muncul di sini." + } + }, + "delete_view": { + "title": "Apakah Anda yakin ingin menghapus tampilan ini?", + "content": "Jika Anda mengonfirmasi, semua opsi pengurutan, filter, dan tampilan + tata letak yang telah Anda pilih untuk tampilan ini akan dihapus secara permanen tanpa cara untuk memulihkannya." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -212,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Simpan tampilan yang difilter untuk proyek Anda. Buat sebanyak yang Anda perlukan", - "description": "Tampilan adalah sekumpulan filter yang disimpan yang Anda gunakan secara sering atau ingin akses mudah. Semua rekan Anda dalam proyek dapat melihat tampilan semua orang dan memilih yang paling sesuai dengan kebutuhan mereka.", - "primary_button": { - "text": "Buat tampilan pertama Anda", - "comic": { - "title": "Tampilan bekerja berdasarkan properti item kerja.", - "description": "Anda dapat membuat tampilan dari sini dengan sebanyak mungkin properti sebagai filter yang Anda anggap sesuai." - } - } - }, - "filter": { - "title": "Tidak ada tampilan yang cocok", - "description": "Tidak ada tampilan yang cocok dengan kriteria pencarian.\n Buat tampilan baru sebagai gantinya." - } - }, - "delete_view": { - "title": "Apakah Anda yakin ingin menghapus tampilan ini?", - "content": "Jika Anda mengonfirmasi, semua opsi pengurutan, filter, dan tampilan + tata letak yang telah Anda pilih untuk tampilan ini akan dihapus secara permanen tanpa cara untuk memulihkannya." - } - }, "project_page": { "empty_state": { "general": { @@ -326,6 +359,13 @@ "manual": "Manual" } }, + "project_members": { + "full_name": "Nama lengkap", + "display_name": "Nama tampilan", + "email": "Email", + "joining_date": "Tanggal bergabung", + "role": "Peran" + }, "project": { "members_import": { "title": "Impor anggota dari CSV", diff --git a/packages/i18n/src/locales/id/settings.json b/packages/i18n/src/locales/id/settings.json index 56d2c8cf7da..5e05f8489e5 100644 --- a/packages/i18n/src/locales/id/settings.json +++ b/packages/i18n/src/locales/id/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferensi", + "description": "Sesuaikan pengalaman aplikasi Anda dengan cara kerja Anda" + }, "notifications": { + "heading": "Notifikasi email", + "description": "Tetap terupdate tentang item kerja yang Anda langgani. Aktifkan ini untuk mendapatkan notifikasi.", "select_default_view": "Pilih tampilan default", "compact": "Ringkas", "full": "Layar penuh" + }, + "security": { + "heading": "Keamanan" + }, + "api_tokens": { + "title": "Token Akses Personal", + "description": "Hasilkan token API yang aman untuk mengintegrasikan data Anda dengan sistem dan aplikasi eksternal." + }, + "activity": { + "heading": "Aktivitas", + "description": "Lacak tindakan dan perubahan terkini Anda di semua proyek dan item kerja." + }, + "connections": { + "title": "Koneksi", + "heading": "Koneksi", + "description": "Kelola pengaturan koneksi ruang kerja Anda." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Keamanan", "activity": "Aktivitas", - "appearance": "Tampilan", + "preferences": "Preferensi", "notifications": "Notifikasi", + "api-tokens": "Token Akses Personal", "connections": "Koneksi" }, "tabs": { diff --git a/packages/i18n/src/locales/id/template.json b/packages/i18n/src/locales/id/template.json index 139314e0793..04abc9cf8ef 100644 --- a/packages/i18n/src/locales/id/template.json +++ b/packages/i18n/src/locales/id/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Template", "description": "Hemat 80% waktu yang dihabiskan untuk membuat proyek, item kerja, dan halaman ketika Anda menggunakan template.", + "new_project_template": "Template proyek baru", + "new_work_item_template": "Template item kerja baru", + "new_page_template": "Template halaman baru", "options": { "project": { "label": "Template proyek" @@ -157,6 +160,14 @@ "required": "Setidaknya satu kata kunci diperlukan" } }, + "website": { + "label": "URL Website", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL tidak valid", + "maxLength": "URL harus kurang dari 800 karakter" + } + }, "company_name": { "label": "Nama perusahaan", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Alamat email tidak valid", - "required": "Email dukungan diperlukan", "maxLength": "Email dukungan harus kurang dari 255 karakter" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Belum ada label. Buat label untuk membantu mengatur dan memfilter item kerja dalam proyek Anda." }, + "no_modules": { + "description": "Belum ada modul. Atur pekerjaan ke dalam sub-proyek dengan pemimpin dan penanggung jawab khusus." + }, "no_work_items": { "description": "Belum ada item kerja. Tambahkan satu untuk membantu mengatur pekerjaan Anda lebih baik." }, diff --git a/packages/i18n/src/locales/id/tour.json b/packages/i18n/src/locales/id/tour.json index cf2c058554b..5d83e73f96a 100644 --- a/packages/i18n/src/locales/id/tour.json +++ b/packages/i18n/src/locales/id/tour.json @@ -110,6 +110,12 @@ "description": "Item pekerjaan dapat ditunda untuk ditinjau di lain waktu. Ini akan dipindahkan ke bagian bawah daftar permintaan terbuka Anda." } }, + "mcp_connectors": { + "step_zero": { + "title": "Berhenti berpindah tab. Hubungkan dunia Anda.", + "description": "Tautkan GitHub, Slack untuk melacak PR dan meringkas obrolan langsung di Plane AI." + } + }, "navigation": { "modal": { "title": "Navigasi, dibayangkan ulang", diff --git a/packages/i18n/src/locales/id/update.json b/packages/i18n/src/locales/id/update.json index 8eb46bfbbe3..f8883ae9c8e 100644 --- a/packages/i18n/src/locales/id/update.json +++ b/packages/i18n/src/locales/id/update.json @@ -1,33 +1,16 @@ { "updates": { + "progress": { + "title": "Progres", + "since_last_update": "Sejak update terakhir", + "comments": "{count, plural, one{# komentar} other{# komentar}}" + }, "add_update": "Tambahkan update", "add_update_placeholder": "Tambahkan update Anda di sini", "empty": { "title": "Belum ada update", "description": "Anda dapat melihat update di sini." }, - "delete": { - "title": "Hapus update", - "confirmation": "Apakah Anda yakin ingin menghapus update ini? Aksi ini tidak dapat dibatalkan.", - "success": { - "title": "Update berhasil dihapus", - "message": "Update berhasil dihapus." - }, - "error": { - "title": "Update tidak berhasil dihapus", - "message": "Update tidak berhasil dihapus." - } - }, - "update": { - "success": { - "title": "Update berhasil diperbarui", - "message": "Update berhasil diperbarui." - }, - "error": { - "title": "Update tidak berhasil diperbarui", - "message": "Update tidak berhasil diperbarui." - } - }, "reaction": { "create": { "success": { @@ -50,11 +33,6 @@ } } }, - "progress": { - "title": "Progres", - "since_last_update": "Sejak update terakhir", - "comments": "{count, plural, one{# komentar} other{# komentar}}" - }, "create": { "success": { "title": "Update berhasil dibuat", @@ -64,6 +42,28 @@ "title": "Update tidak berhasil dibuat", "message": "Update tidak berhasil dibuat." } + }, + "delete": { + "title": "Hapus update", + "confirmation": "Apakah Anda yakin ingin menghapus update ini? Aksi ini tidak dapat dibatalkan.", + "success": { + "title": "Update berhasil dihapus", + "message": "Update berhasil dihapus." + }, + "error": { + "title": "Update tidak berhasil dihapus", + "message": "Update tidak berhasil dihapus." + } + }, + "update": { + "success": { + "title": "Update berhasil diperbarui", + "message": "Update berhasil diperbarui." + }, + "error": { + "title": "Update tidak berhasil diperbarui", + "message": "Update tidak berhasil diperbarui." + } } } } diff --git a/packages/i18n/src/locales/id/wiki.json b/packages/i18n/src/locales/id/wiki.json index e0aa57cac88..5cf448f983d 100644 --- a/packages/i18n/src/locales/id/wiki.json +++ b/packages/i18n/src/locales/id/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Halaman tidak dapat dibuat atau ditambahkan ke koleksi. Silakan coba lagi.", "collection_link_copied": "Tautan koleksi disalin ke clipboard." } + }, + "wiki": { + "upgrade_flow": { + "title": "Tingkatkan untuk membuka Wiki", + "description": "Buka halaman publik, riwayat versi, halaman yang dibagikan, kolaborasi real-time, dan halaman ruang kerja untuk wiki, dokumen seluruh perusahaan, dan basis pengetahuan dengan Plane Pro.", + "upgrade_button": { + "text": "Tingkatkan" + }, + "learn_more_button": { + "text": "Pelajari lebih lanjut" + }, + "download_button": { + "text": "Unduh data", + "loading": "Mengunduh" + }, + "tabs": { + "nested_pages": "Halaman Bertingkat", + "add_embeds": "Tambah embed", + "publish_pages": "Publikasikan halaman", + "comments": "Komentar" + } + }, + "nested_pages_download_banner": { + "title": "Halaman bertingkat memerlukan paket berbayar. Tingkatkan untuk membukanya." + } } } diff --git a/packages/i18n/src/locales/id/work-item-type.json b/packages/i18n/src/locales/id/work-item-type.json index f52e1c347e6..22411b6b71a 100644 --- a/packages/i18n/src/locales/id/work-item-type.json +++ b/packages/i18n/src/locales/id/work-item-type.json @@ -3,11 +3,25 @@ "label": "Tipe Item Kerja", "label_lowercase": "tipe item kerja", "settings": { - "title": "Tipe Item Kerja", + "description": "Sesuaikan dan tambahkan properti Anda sendiri untuk menyesuaikannya dengan kebutuhan tim Anda.", + "cant_delete_default_message": "Jenis item kerja ini tidak dapat dihapus karena diatur sebagai default untuk proyek ini.", + "set_as_default": "Atur sebagai default", + "cant_set_default_inactive_message": "Aktifkan tipe ini sebelum mengaturnya sebagai default", + "set_default_confirmation": { + "title": "Atur sebagai tipe item kerja default", + "description": "Mengatur {name} sebagai default akan mengimpornya ke semua proyek di ruang kerja ini. Semua item kerja baru akan menggunakan tipe ini secara default.", + "confirm_button": "Atur sebagai default" + }, "properties": { "title": "Properti kustom", + "description": "Buat dan sesuaikan properti.", "tooltip": "Setiap tipe item kerja dilengkapi dengan serangkaian properti default seperti Judul, Deskripsi, Penerima tugas, Status, Prioritas, Tanggal mulai, Tanggal jatuh tempo, Modul, Siklus, dll. Anda juga dapat menyesuaikan dan menambahkan properti Anda sendiri untuk menyesuaikannya dengan kebutuhan tim Anda.", "add_button": "Tambah properti baru", + "project": { + "add_button": { + "import_from_workspace": "Impor dari ruang kerja" + } + }, "dropdown": { "label": "Tipe properti", "placeholder": "Pilih tipe" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Buat properti kustom baru", + "update": "Perbarui properti kustom" + }, "form": { "display_name": { "placeholder": "Judul" @@ -213,9 +231,50 @@ "description": "Properti baru yang Anda tambahkan untuk tipe item kerja ini akan ditampilkan di sini." } }, + "types": { + "title": "Tipe", + "description": "Buat dan sesuaikan tipe item kerja dengan properti.", + "sort_options": { + "project_count": "Jumlah proyek yang menjadi bagian" + }, + "filter_options": { + "show_active": "Tampilkan aktif", + "show_inactive": "Tampilkan tidak aktif" + }, + "project": { + "add_button": { + "create_new": "Buat baru", + "import_from_workspace": "Impor dari ruang kerja" + }, + "banner": { + "with_access": "Aktifkan tipe item kerja untuk mengimpor tipe dari level ruang kerja", + "without_access": "Tipe item kerja dinonaktifkan. Hubungi admin ruang kerja untuk mengaktifkannya di pengaturan ruang kerja." + } + } + }, + "linked_properties": { + "title": "Properti kustom", + "add_button": "Tambah properti", + "modal": { + "title": "Tambah properti", + "empty": { + "title": "Tidak ada properti tersedia", + "description": "Semua properti telah ditautkan ke tipe ini." + } + }, + "unlink_confirmation": { + "title": "Lepas tautan properti", + "description": "Melepas tautan properti ini akan menghapus secara permanen semua nilainya di setiap item kerja yang menggunakan tipe ini. Tindakan ini tidak dapat dibatalkan.", + "input_label": "Ketik", + "input_label_suffix": "untuk melanjutkan:", + "confirm": "Lepas tautan properti", + "loading": "Melepas tautan" + } + }, "item_delete_confirmation": { "title": "Hapus jenis ini", "description": "Penghapusan tipe dapat menyebabkan hilangnya data yang ada.", + "can_disable_warning": "Apakah Anda ingin menonaktifkan jenisnya saja?", "primary_button": "Ya, hapus", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Tidak dapat menghapus jenis item kerja default", "cannot_delete_work_item_type_with_associated_work_items": "Tidak dapat menghapus jenis item kerja yang memiliki item kerja terkait" - }, - "can_disable_warning": "Apakah Anda ingin menonaktifkan jenisnya saja?" - }, - "cant_delete_default_message": "Jenis item kerja ini tidak dapat dihapus karena diatur sebagai default untuk proyek ini.", - "set_as_default": "Atur sebagai default", - "cant_set_default_inactive_message": "Aktifkan tipe ini sebelum mengaturnya sebagai default", - "set_default_confirmation": { - "title": "Atur sebagai tipe item kerja default", - "description": "Mengatur {name} sebagai default akan mengimpornya ke semua proyek di ruang kerja ini. Semua item kerja baru akan menggunakan tipe ini secara default.", - "confirm_button": "Atur sebagai default" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Kesalahan!", "message": { + "default": "Gagal membuat tipe item kerja. Silakan coba lagi!", "conflict": "Tipe {name} sudah ada. Pilih nama lain." } } @@ -269,6 +320,7 @@ "error": { "title": "Kesalahan!", "message": { + "default": "Gagal memperbarui tipe item kerja. Silakan coba lagi!", "conflict": "Tipe {name} sudah ada. Pilih nama lain." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Kesalahan validasi!", + "title": "Menyimpan akan memutus tautan yang ada", "content": { "intro": "Jenis item pekerjaan {workItemTypeName} memiliki:", - "parent_items": "{count, plural, other {item pekerjaan induk}}", + "parent_items": "{count, plural, other {# tautan induk akan dihapus}}.", "child_items": "{count, plural, other {sub-item pekerjaan}}", "parent_line_suffix_when_also_children": ", dan ", "footer": "Perubahan ini akan menghapus hubungan induk-anak dari item pekerjaan yang ada dengan jenis {workItemTypeName}." }, "confirm_input": { - "label": "Ketik \"Konfirmasi\" untuk melanjutkan.", - "placeholder": "Konfirmasi" + "label": "Ketik \"konfirmasi\" untuk melanjutkan.", + "placeholder": "konfirmasi" }, "error_toast": { "title": "Kesalahan!", - "message": "Gagal memutus hierarki. Silakan coba lagi." + "message": "Gagal melepaskan tautan dan menyimpan. Silakan coba lagi." }, "confirm_button": { - "loading": "Menerapkan", - "default": "Terapkan & lepas tautan" + "loading": "Menyimpan", + "default": "Simpan tetap" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/id/work-item.json b/packages/i18n/src/locales/id/work-item.json index d3e61902946..917fdeb1b6a 100644 --- a/packages/i18n/src/locales/id/work-item.json +++ b/packages/i18n/src/locales/id/work-item.json @@ -20,6 +20,7 @@ "due_date": "Tambah tanggal jatuh tempo", "parent": "Tambah item kerja induk", "sub_issue": "Tambah sub-item kerja", + "dependency": "Tambah ketergantungan", "relation": "Tambah hubungan", "link": "Tambah tautan", "existing": "Tambah item kerja yang ada" @@ -110,6 +111,43 @@ "copy_link": { "success": "Tautan komentar berhasil disalin ke clipboard", "error": "Gagal menyalin tautan komentar. Silakan coba lagi nanti." + }, + "replies": { + "create": { + "submit_button": "Tambah balasan", + "placeholder": "Tambah balasan" + }, + "toast": { + "fetch": { + "error": { + "message": "Gagal mengambil balasan" + } + }, + "create": { + "success": { + "message": "Balasan berhasil dibuat" + }, + "error": { + "message": "Gagal membuat balasan" + } + }, + "update": { + "success": { + "message": "Balasan berhasil diperbarui" + }, + "error": { + "message": "Gagal memperbarui balasan" + } + }, + "delete": { + "success": { + "message": "Balasan berhasil dihapus" + }, + "error": { + "message": "Gagal menghapus balasan" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Batalkan pilihan semua item kerja" }, "open_in_full_screen": "Buka item kerja dalam layar penuh", + "duplicate": { + "modal": { + "title": "Buat salinan ke proyek lain", + "description1": "Ini membuat salinan item kerja.", + "description2": "Semua data properti akan dihapus saat menduplikasi.", + "placeholder": "Pilih proyek" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Item kerja berhasil diduplikasi" + }, + "error": { + "message": "Gagal menduplikasi item kerja" + } + } + }, + "pages": { + "link_pages": "Hubungkan halaman", + "show_wiki_pages": "Tampilkan halaman Wiki", + "link_pages_to": "Hubungkan halaman ke", + "linked_pages": "Halaman yang terhubung", + "no_description": "Ini adalah halaman kosong. Mengapa tidak menulis sesuatu di dalamnya dan melihatnya muncul di sini seperti placeholder ini", + "toasts": { + "link": { + "success": { + "title": "Halaman diperbarui", + "message": "Halaman berhasil diperbarui" + }, + "error": { + "title": "Pembaruan halaman gagal", + "message": "Pembaruan halaman gagal" + } + }, + "remove": { + "success": { + "title": "Halaman dihapus", + "message": "Halaman berhasil dihapus" + }, + "error": { + "title": "Penghapusan halaman gagal", + "message": "Penghapusan halaman gagal" + } + } + } + }, "vote": { "click_to_upvote": "Klik untuk memberi suara naik", "click_to_downvote": "Klik untuk memberi suara turun", @@ -241,54 +326,6 @@ "title": "Tidak dapat memperbarui item kerja", "message": "Perubahan status tidak diizinkan untuk beberapa item kerja. Pastikan perubahan status diizinkan." } - }, - "workflows": { - "toggle": { - "title": "Aktifkan alur kerja", - "description": "Atur alur kerja untuk mengontrol perpindahan item kerja", - "no_states_tooltip": "Tidak ada status yang ditambahkan ke alur kerja.", - "toast": { - "loading": { - "enabling": "Mengaktifkan alur kerja", - "disabling": "Menonaktifkan alur kerja" - }, - "success": { - "title": "Berhasil!", - "message": "Alur kerja berhasil diaktifkan." - }, - "error": { - "title": "Kesalahan!", - "message": "Gagal mengaktifkan alur kerja. Silakan coba lagi." - } - } - }, - "heading": "Alur kerja", - "description": "Otomatiskan transisi item kerja dan tetapkan aturan untuk mengontrol bagaimana tugas bergerak melalui alur proyek Anda.", - "add_button": "Tambahkan alur kerja baru", - "search": "Cari alur kerja", - "detail": { - "define": "Tentukan alur kerja", - "add_states": "Tambahkan status", - "unmapped_states": { - "title": "Status yang belum dipetakan terdeteksi", - "description": "Beberapa item kerja untuk tipe yang dipilih saat ini berada dalam status yang tidak ada di alur kerja ini.", - "note": "Jika Anda mengaktifkan alur kerja ini, item-item tersebut akan otomatis dipindahkan ke status awal untuk alur kerja ini.", - "label": "Status yang hilang", - "tooltip": "Beberapa item kerja berada dalam status yang tidak dipetakan ke alur kerja ini. Buka alur kerja untuk meninjaunya." - } - }, - "select_states": { - "empty_state": { - "title": "Semua status sedang digunakan", - "description": "Semua status yang ditentukan untuk proyek ini sudah ada di alur kerja Anda saat ini." - } - }, - "default_footer": { - "fallback_message": "Alur kerja ini berlaku untuk tipe item kerja apa pun yang tidak ditetapkan ke alur kerja mana pun." - }, - "create": { - "heading": "Buat alur kerja baru" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/id/workspace-settings.json b/packages/i18n/src/locales/id/workspace-settings.json index 882f8e4d249..3522088c355 100644 --- a/packages/i18n/src/locales/id/workspace-settings.json +++ b/packages/i18n/src/locales/id/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Penagihan & Rencana", + "description": "Pilih rencana Anda, kelola langganan, dan tingkatkan dengan mudah seiring pertumbuhan kebutuhan Anda.", "title": "Penagihan & Rencana", "current_plan": "Rencana saat ini", "free_plan": "Anda saat ini menggunakan rencana gratis", "view_plans": "Lihat rencana" }, "exports": { + "heading": "Ekspor", + "description": "Ekspor data proyek Anda dalam berbagai format dan akses riwayat ekspor Anda dengan tautan unduhan.", "title": "Ekspor", "exporting": "Mengeskpor", "previous_exports": "Ekspor sebelumnya", "export_separate_files": "Ekspor data ke file terpisah", + "exporting_projects": "Mengekspor proyek", + "format": "Format", "filters_info": "Terapkan filter untuk mengekspor item kerja tertentu berdasarkan kriteria Anda.", "modal": { "title": "Ekspor ke", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook", + "description": "Otomatiskan notifikasi ke layanan eksternal saat peristiwa proyek terjadi.", "title": "Webhook", "add_webhook": "Tambah webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integrasi", + "heading": "Integrasi", + "description": "Hubungkan dengan alat dan layanan populer untuk menyinkronkan pekerjaan Anda di seluruh ekosistem alur kerja Anda.", "page_title": "Gunakan data Plane Anda di aplikasi yang tersedia atau aplikasi Anda sendiri.", "page_description": "Lihat semua integrasi yang digunakan oleh workspace ini atau oleh Anda." }, "imports": { - "title": "Impor" + "title": "Impor", + "heading": "Impor", + "description": "Hubungkan dan impor data dari alat manajemen proyek Anda yang sudah ada untuk menyederhanakan integrasi alur kerja." }, "worklogs": { - "title": "Log kerja" + "title": "Log kerja", + "heading": "Log kerja", + "description": "Unduh log kerja alias lembar waktu untuk siapa pun dalam proyek apa pun." }, "group_syncing": { "title": "Sinkronisasi grup", @@ -242,7 +256,10 @@ "description": "Konfigurasi domain Anda dan aktifkan Single sign-on" }, "project_states": { - "title": "Status proyek" + "title": "Status proyek", + "heading": "Lihat ikhtisar kemajuan untuk semua proyek.", + "description": "Status Proyek adalah fitur khusus Plane untuk melacak kemajuan semua proyek Anda berdasarkan properti proyek apa pun.", + "go_to_settings": "Pergi ke pengaturan" }, "projects": { "title": "Proyek", @@ -252,6 +269,16 @@ "labels": "Label proyek" } }, + "templates": { + "title": "Templat", + "heading": "Templat", + "description": "Hemat 80% waktu yang dihabiskan untuk membuat proyek, item kerja, dan halaman saat Anda menggunakan templat." + }, + "relations": { + "title": "Relasi", + "heading": "Relasi", + "description": "Buat dan kelola tipe relasi yang menghubungkan item kerja di seluruh ruang kerja Anda." + }, "cancel_trial": { "title": "Batalkan uji coba Anda terlebih dahulu.", "description": "Anda memiliki uji coba aktif untuk salah satu paket berbayar kami. Silakan batalkan terlebih dahulu untuk melanjutkan.", @@ -263,6 +290,7 @@ "cancel_error_message": "Silakan coba lagi." }, "applications": { + "internal": "Internal", "title": "Aplikasi", "applicationId_copied": "ID aplikasi disalin ke clipboard", "clientId_copied": "ID klien disalin ke clipboard", @@ -271,10 +299,61 @@ "your_apps": "Aplikasi Anda", "connect": "Koneksi", "connected": "Terhubung", + "disconnect": "Putuskan", "install": "Pasang", "installed": "Terpasang", "configure": "Konfigurasi", "app_available": "Anda telah membuat aplikasi ini tersedia untuk digunakan dengan workspace Plane", + "app_credentials_regenrated": { + "title": "Kredensial aplikasi berhasil digenerasi ulang", + "description": "Ganti client secret di semua tempat yang digunakan. Secret sebelumnya sudah tidak berlaku." + }, + "app_created": { + "title": "Aplikasi berhasil dibuat", + "description": "Gunakan kredensial untuk menginstal aplikasi di ruang kerja Plane" + }, + "installed_apps": "Aplikasi terpasang", + "all_apps": "Semua aplikasi", + "internal_apps": "Aplikasi internal", + "app_name_title": "Apa nama Anda untuk aplikasi ini", + "app_description_title": { + "label": "Deskripsi panjang", + "placeholder": "Tulis deskripsi panjang untuk marketplace. Tekan '/' untuk perintah." + }, + "authorization_grant_type": { + "title": "Jenis Koneksi", + "description": "Pilih apakah aplikasi Anda harus diinstal sekali untuk workspace atau biarkan setiap pengguna menghubungkan akun mereka sendiri" + }, + "website": { + "title": "Situs web", + "description": "Tautan ke situs web aplikasi Anda.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Pembuat Aplikasi", + "description": "Orang atau organisasi yang membuat aplikasi." + }, + "app_maker_error": "Pembuat aplikasi diperlukan", + "setup_url": { + "label": "URL pengaturan", + "description": "Pengguna akan diarahkan ke URL ini saat mereka menginstal aplikasi.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL webhook", + "description": "Di sinilah kami akan mengirimkan event dan pembaruan webhook dari workspace tempat aplikasi Anda terpasang.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Rahasia Webhook", + "description": "Rahasia yang digunakan untuk memverifikasi permintaan webhook yang masuk.", + "placeholder": "Masukkan kunci rahasia acak" + }, + "redirect_uris": { + "label": "URI pengalihan (dipisahkan spasi)", + "description": "Pengguna akan diarahkan ke jalur ini setelah mereka masuk dengan Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Hubungkan workspace Plane untuk mulai menggunakannya", "client_id_and_secret": "ID klien dan Rahasia", "client_id_and_secret_description": "Salin dan simpan kunci rahasia ini di Pages. Anda tidak dapat melihat kunci ini lagi setelah Anda menutupnya.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slug sudah ada", "failed_to_create_application": "Gagal membuat aplikasi", "upload_logo": "Unggah Logo", - "app_name_title": "Apa nama Anda untuk aplikasi ini", "app_name_error": "Nama aplikasi diperlukan", "app_short_description_title": "Berikan aplikasi ini deskripsi singkat", "app_short_description_error": "Deskripsi aplikasi singkat diperlukan", - "app_description_title": { - "label": "Deskripsi panjang", - "placeholder": "Tulis deskripsi panjang untuk marketplace. Tekan '/' untuk perintah." - }, - "authorization_grant_type": { - "title": "Jenis Koneksi", - "description": "Pilih apakah aplikasi Anda harus diinstal sekali untuk workspace atau biarkan setiap pengguna menghubungkan akun mereka sendiri" - }, "app_description_error": "Deskripsi aplikasi diperlukan", "app_slug_title": "Slug aplikasi", "app_slug_error": "Slug aplikasi diperlukan", - "app_maker_title": "Pembuat aplikasi", - "app_maker_error": "Pembuat aplikasi diperlukan", + "invalid_website_error": "Website tidak valid", "webhook_url_title": "URL Webhook", "webhook_url_error": "URL Webhook diperlukan", "invalid_webhook_url_error": "URL Webhook tidak valid", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Masukkan URI yang dipisahkan oleh spasi di mana aplikasi akan diizinkan untuk membuat permintaan e.g app.com example.com", "create_app": "Buat aplikasi", "update_app": "Perbarui aplikasi", + "build_your_own_app": "Bangun aplikasi Anda sendiri", + "edit_app_details": "Edit detail aplikasi", "regenerate_client_secret_description": "Regenerate kunci rahasia klien. Jika Anda menghasilkan kunci rahasia, Anda dapat menyalin kunci atau mengunduhnya ke file CSV setelah itu.", "regenerate_client_secret": "Regenerate kunci rahasia klien", "regenerate_client_secret_confirm_title": "Apakah Anda yakin ingin menghasilkan kembali kunci rahasia klien?", @@ -362,7 +433,6 @@ "video_url_title": "URL Video", "video_url_error": "URL Video diperlukan", "invalid_video_url_error": "URL Video tidak valid", - "setup_url_title": "URL Setup", "setup_url_error": "URL Setup diperlukan", "invalid_setup_url_error": "URL Setup tidak valid", "configuration_url_title": "URL Konfigurasi", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "File tidak valid atau melebihi batas ukuran ({size} MB)", "uploading": "Mengunggah...", "upload_and_save": "Unggah dan Simpan", - "app_credentials_regenrated": { - "title": "Kredensial aplikasi berhasil digenerasi ulang", - "description": "Ganti client secret di semua tempat yang digunakan. Secret sebelumnya sudah tidak berlaku." - }, - "app_created": { - "title": "Aplikasi berhasil dibuat", - "description": "Gunakan kredensial untuk menginstal aplikasi di ruang kerja Plane" - }, - "installed_apps": "Aplikasi terpasang", - "all_apps": "Semua aplikasi", - "internal_apps": "Aplikasi internal", - "website": { - "title": "Situs web", - "description": "Tautan ke situs web aplikasi Anda.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Pembuat Aplikasi", - "description": "Orang atau organisasi yang membuat aplikasi." - }, - "setup_url": { - "label": "URL pengaturan", - "description": "Pengguna akan diarahkan ke URL ini saat mereka menginstal aplikasi.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL webhook", - "description": "Di sinilah kami akan mengirimkan event dan pembaruan webhook dari workspace tempat aplikasi Anda terpasang.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI pengalihan (dipisahkan spasi)", - "description": "Pengguna akan diarahkan ke jalur ini setelah mereka masuk dengan Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Permintaan untuk menginstal", "app_consent_no_access_description": "Aplikasi ini hanya dapat diinstal setelah admin workspace menginstalnya. Hubungi admin workspace Anda untuk melanjutkan.", + "app_consent_unapproved_title": "Aplikasi ini belum ditinjau atau disetujui oleh Plane.", + "app_consent_unapproved_description": "Pastikan Anda memercayai aplikasi ini sebelum menghubungkannya ke ruang kerja Anda.", + "go_to_app": "Buka aplikasi", "enable_app_mentions": "Aktifkan penyebutan aplikasi", "enable_app_mentions_tooltip": "Saat ini diaktifkan, pengguna dapat menyebut atau menetapkan Work Items ke aplikasi ini.", "scopes": "Lingkup", @@ -433,15 +472,18 @@ "profile": "Akses ke informasi profil pengguna", "agents": "Akses ke agen dan semua entitas terkait agen", "assets": "Akses ke aset dan semua entitas terkait aset" - }, - "build_your_own_app": "Bangun aplikasi Anda sendiri", - "edit_app_details": "Edit detail aplikasi", - "internal": "Internal" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Lihat pekerjaan Anda menjadi lebih cerdas dan lebih cepat dengan AI yang terhubung secara native ke pekerjaan dan basis pengetahuan Anda." + }, + "runners": { + "title": "Plane Runner", + "heading": "Skrip", + "new_script": "Skrip Baru", + "description": "Otomatisasi alur kerja Anda dengan skrip kustom dan aturan otomatisasi." } }, "empty_state": { diff --git a/packages/i18n/src/locales/id/workspace.json b/packages/i18n/src/locales/id/workspace.json index 0b82b372445..911b67edb2a 100644 --- a/packages/i18n/src/locales/id/workspace.json +++ b/packages/i18n/src/locales/id/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Lingkup dan Permintaan", "custom": "Analitik Kustom" }, + "total": "Total {entity}", + "started_work_items": "{entity} yang telah dimulai", + "backlog_work_items": "{entity} backlog", + "un_started_work_items": "{entity} yang belum dimulai", + "completed_work_items": "{entity} yang telah selesai", + "project_insights": "Wawasan Proyek", + "summary_of_projects": "Ringkasan Proyek", + "all_projects": "Semua Proyek", + "trend_on_charts": "Tren pada grafik", + "active_projects": "Proyek Aktif", + "customized_insights": "Wawasan yang Disesuaikan", + "created_vs_resolved": "Dibuat vs Diselesaikan", "empty_state": { - "customized_insights": { - "description": "Item pekerjaan yang ditugaskan kepada Anda, dipecah berdasarkan status, akan muncul di sini.", - "title": "Belum ada data" + "project_insights": { + "title": "Belum ada data", + "description": "Item pekerjaan yang ditugaskan kepada Anda, dipecah berdasarkan status, akan muncul di sini." }, "created_vs_resolved": { - "description": "Item pekerjaan yang dibuat dan diselesaikan dari waktu ke waktu akan muncul di sini.", - "title": "Belum ada data" + "title": "Belum ada data", + "description": "Item pekerjaan yang dibuat dan diselesaikan dari waktu ke waktu akan muncul di sini." }, - "project_insights": { + "customized_insights": { "title": "Belum ada data", "description": "Item pekerjaan yang ditugaskan kepada Anda, dipecah berdasarkan status, akan muncul di sini." }, @@ -132,29 +144,11 @@ "description": "Analitik tren intake akan muncul di sini. Tambahkan item kerja ke intake untuk mulai melacak tren." } }, - "created_vs_resolved": "Dibuat vs Diselesaikan", - "customized_insights": "Wawasan yang Disesuaikan", - "backlog_work_items": "{entity} backlog", - "active_projects": "Proyek Aktif", - "trend_on_charts": "Tren pada grafik", - "all_projects": "Semua Proyek", - "summary_of_projects": "Ringkasan Proyek", - "project_insights": "Wawasan Proyek", - "started_work_items": "{entity} yang telah dimulai", - "total_work_items": "Total {entity}", - "total_projects": "Total Proyek", - "total_admins": "Total Admin", - "total_users": "Total Pengguna", - "total_intake": "Total Pemasukan", - "un_started_work_items": "{entity} yang belum dimulai", - "total_guests": "Total Tamu", - "completed_work_items": "{entity} yang telah selesai", - "total": "Total {entity}", + "upgrade_to_plan": "Tingkatkan ke {plan} untuk membuka {tab}", + "workitem_resolved_vs_pending": "Item kerja yang diselesaikan vs tertunda", "projects_by_status": "Proyek berdasarkan status", "active_users": "Pengguna aktif", - "intake_trends": "Tren Penerimaan", - "workitem_resolved_vs_pending": "Item kerja yang diselesaikan vs tertunda", - "upgrade_to_plan": "Tingkatkan ke {plan} untuk membuka {tab}" + "intake_trends": "Tren Penerimaan" }, "workspace_projects": { "label": "{count, plural, one {Proyek} other {Proyek}}", @@ -318,6 +312,10 @@ "archived": { "title": "Belum ada halaman yang diarsipkan", "description": "Arsipkan halaman yang tidak di radar Anda. Akses di sini saat diperlukan." + }, + "shared": { + "title": "Belum ada halaman yang dibagikan", + "description": "Halaman yang dibagikan orang lain kepada Anda akan muncul di sini." } } }, diff --git a/packages/i18n/src/locales/it/auth.json b/packages/i18n/src/locales/it/auth.json index e4ec73e9d5e..7b051cbf829 100644 --- a/packages/i18n/src/locales/it/auth.json +++ b/packages/i18n/src/locales/it/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "nome@azienda.com", - "errors": { - "required": "Email è obbligatoria", - "invalid": "Email non valida" - } - }, - "password": { - "label": "Password", - "set_password": "Imposta una password", - "placeholder": "Inserisci la password", - "confirm_password": { - "label": "Conferma password", - "placeholder": "Conferma password" - }, - "current_password": { - "label": "Password attuale" - }, - "new_password": { - "label": "Nuova password", - "placeholder": "Inserisci nuova password" - }, - "change_password": { - "label": { - "default": "Cambia password", - "submitting": "Cambiando password" - } - }, - "errors": { - "match": "Le password non corrispondono", - "empty": "Per favore inserisci la tua password", - "length": "La lunghezza della password deve essere superiore a 8 caratteri", - "strength": { - "weak": "La password è debole", - "strong": "La password è forte" - } - }, - "submit": "Imposta password", - "toast": { - "change_password": { - "success": { - "title": "Successo!", - "message": "Password cambiata con successo." - }, - "error": { - "title": "Errore!", - "message": "Qualcosa è andato storto. Per favore riprova." - } - } - } - }, - "unique_code": { - "label": "Codice unico", - "placeholder": "123456", - "paste_code": "Incolla il codice inviato alla tua email", - "requesting_new_code": "Richiesta di nuovo codice", - "sending_code": "Invio codice" - }, - "already_have_an_account": "Hai già un account?", - "login": "Accedi", - "create_account": "Crea un account", - "new_to_plane": "Nuovo su Plane?", - "back_to_sign_in": "Torna al login", - "resend_in": "Reinvia in {seconds} secondi", - "sign_in_with_unique_code": "Accedi con codice unico", - "forgot_password": "Hai dimenticato la password?", - "username": { - "label": "Nome utente", - "placeholder": "Inserisci il tuo nome utente" - } - }, - "sign_up": { - "header": { - "label": "Crea un account per iniziare a gestire il lavoro con il tuo team.", - "step": { - "email": { - "header": "Registrati", - "sub_header": "" - }, - "password": { - "header": "Registrati", - "sub_header": "Registrati utilizzando una combinazione email-password." - }, - "unique_code": { - "header": "Registrati", - "sub_header": "Registrati utilizzando un codice unico inviato all'indirizzo email sopra." - } - } - }, - "errors": { - "password": { - "strength": "Prova a impostare una password forte per procedere" - } - } - }, - "sign_in": { - "header": { - "label": "Accedi per iniziare a gestire il lavoro con il tuo team.", - "step": { - "email": { - "header": "Accedi o registrati", - "sub_header": "" - }, - "password": { - "header": "Accedi o registrati", - "sub_header": "Usa la tua combinazione email-password per accedere." - }, - "unique_code": { - "header": "Accedi o registrati", - "sub_header": "Accedi utilizzando un codice unico inviato all'indirizzo email sopra." - } - } - } - }, - "forgot_password": { - "title": "Reimposta la tua password", - "description": "Inserisci l'indirizzo email verificato del tuo account utente e ti invieremo un link per reimpostare la password.", - "email_sent": "Abbiamo inviato il link di reimpostazione al tuo indirizzo email", - "send_reset_link": "Invia link di reimpostazione", - "errors": { - "smtp_not_enabled": "Vediamo che il tuo amministratore non ha abilitato SMTP, non saremo in grado di inviare un link di reimpostazione della password" - }, - "toast": { - "success": { - "title": "Email inviata", - "message": "Controlla la tua inbox per un link per reimpostare la tua password. Se non appare entro pochi minuti, controlla la tua cartella spam." - }, - "error": { - "title": "Errore!", - "message": "Qualcosa è andato storto. Per favore riprova." - } - } - }, - "reset_password": { - "title": "Imposta nuova password", - "description": "Proteggi il tuo account con una password forte" - }, - "set_password": { - "title": "Proteggi il tuo account", - "description": "Impostare una password ti aiuta a accedere in modo sicuro" - }, - "sign_out": { - "toast": { - "error": { - "title": "Errore!", - "message": "Impossibile disconnettersi. Per favore riprova." - } - } - }, - "ldap": { - "header": { - "label": "Continua con {ldapProviderName}", - "sub_header": "Inserisci le tue credenziali {ldapProviderName}" - } - } - }, "sso": { "header": "Identità", "description": "Configura il tuo dominio per accedere alle funzionalità di sicurezza inclusa l'autenticazione singola.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "nome@azienda.com", + "errors": { + "required": "Email è obbligatoria", + "invalid": "Email non valida" + } + }, + "password": { + "label": "Password", + "set_password": "Imposta una password", + "placeholder": "Inserisci la password", + "confirm_password": { + "label": "Conferma password", + "placeholder": "Conferma password" + }, + "current_password": { + "label": "Password attuale" + }, + "new_password": { + "label": "Nuova password", + "placeholder": "Inserisci nuova password" + }, + "change_password": { + "label": { + "default": "Cambia password", + "submitting": "Cambiando password" + } + }, + "errors": { + "match": "Le password non corrispondono", + "empty": "Per favore inserisci la tua password", + "length": "La lunghezza della password deve essere superiore a 8 caratteri", + "strength": { + "weak": "La password è debole", + "strong": "La password è forte" + } + }, + "submit": "Imposta password", + "toast": { + "change_password": { + "success": { + "title": "Successo!", + "message": "Password cambiata con successo." + }, + "error": { + "title": "Errore!", + "message": "Qualcosa è andato storto. Per favore riprova." + } + } + } + }, + "unique_code": { + "label": "Codice unico", + "placeholder": "123456", + "paste_code": "Incolla il codice inviato alla tua email", + "requesting_new_code": "Richiesta di nuovo codice", + "sending_code": "Invio codice" + }, + "already_have_an_account": "Hai già un account?", + "login": "Accedi", + "create_account": "Crea un account", + "new_to_plane": "Nuovo su Plane?", + "back_to_sign_in": "Torna al login", + "resend_in": "Reinvia in {seconds} secondi", + "sign_in_with_unique_code": "Accedi con codice unico", + "forgot_password": "Hai dimenticato la password?", + "username": { + "label": "Nome utente", + "placeholder": "Inserisci il tuo nome utente" + } + }, + "sign_up": { + "header": { + "label": "Crea un account per iniziare a gestire il lavoro con il tuo team.", + "step": { + "email": { + "header": "Registrati", + "sub_header": "" + }, + "password": { + "header": "Registrati", + "sub_header": "Registrati utilizzando una combinazione email-password." + }, + "unique_code": { + "header": "Registrati", + "sub_header": "Registrati utilizzando un codice unico inviato all'indirizzo email sopra." + } + } + }, + "errors": { + "password": { + "strength": "Prova a impostare una password forte per procedere" + } + } + }, + "sign_in": { + "header": { + "label": "Accedi per iniziare a gestire il lavoro con il tuo team.", + "step": { + "email": { + "header": "Accedi o registrati", + "sub_header": "" + }, + "password": { + "header": "Accedi o registrati", + "sub_header": "Usa la tua combinazione email-password per accedere." + }, + "unique_code": { + "header": "Accedi o registrati", + "sub_header": "Accedi utilizzando un codice unico inviato all'indirizzo email sopra." + } + } + } + }, + "forgot_password": { + "title": "Reimposta la tua password", + "description": "Inserisci l'indirizzo email verificato del tuo account utente e ti invieremo un link per reimpostare la password.", + "email_sent": "Abbiamo inviato il link di reimpostazione al tuo indirizzo email", + "send_reset_link": "Invia link di reimpostazione", + "errors": { + "smtp_not_enabled": "Vediamo che il tuo amministratore non ha abilitato SMTP, non saremo in grado di inviare un link di reimpostazione della password" + }, + "toast": { + "success": { + "title": "Email inviata", + "message": "Controlla la tua inbox per un link per reimpostare la tua password. Se non appare entro pochi minuti, controlla la tua cartella spam." + }, + "error": { + "title": "Errore!", + "message": "Qualcosa è andato storto. Per favore riprova." + } + } + }, + "reset_password": { + "title": "Imposta nuova password", + "description": "Proteggi il tuo account con una password forte" + }, + "set_password": { + "title": "Proteggi il tuo account", + "description": "Impostare una password ti aiuta a accedere in modo sicuro" + }, + "sign_out": { + "toast": { + "error": { + "title": "Errore!", + "message": "Impossibile disconnettersi. Per favore riprova." + } + } + }, + "ldap": { + "header": { + "label": "Continua con {ldapProviderName}", + "sub_header": "Inserisci le tue credenziali {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/it/automation.json b/packages/i18n/src/locales/it/automation.json index 1cb1d9879aa..f279366e346 100644 --- a/packages/i18n/src/locales/it/automation.json +++ b/packages/i18n/src/locales/it/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Indietro", "next": "Aggiungi azione" + }, + "warning": { + "disabled_trigger_switching": "Non puoi modificare il tipo di trigger una volta creato" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Seleziona un'opzione", "handler_name": { "add_comment": "Aggiungi commento", - "change_property": "Cambia proprietà" + "change_property": "Cambia proprietà", + "run_script": "Esegui script" }, "configuration": { "label": "Configurazione", @@ -89,6 +93,9 @@ "comment_block": { "title": "Aggiungi commento" }, + "run_script_block": { + "title": "Esegui script" + }, "change_property_block": { "title": "Cambia proprietà" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Titolo automazione", + "scope": "Ambito", + "projects": "Progetti", "last_run_on": "Ultima esecuzione il", "created_on": "Creata il", "last_updated_on": "Ultimo aggiornamento il", @@ -230,6 +239,35 @@ "description": "Le automazioni sono un modo per automatizzare le attività nel tuo progetto.", "sub_description": "Recupera l'80% del tuo tempo amministrativo quando usi le Automazioni." } + }, + "global_automations": { + "project_select": { + "label": "Seleziona i progetti su cui eseguire questa automazione", + "all_projects": { + "label": "Tutti i progetti", + "description": "L'automazione verrà eseguita per tutti i progetti nello spazio di lavoro." + }, + "select_projects": { + "label": "Seleziona progetti", + "description": "L'automazione verrà eseguita per i progetti selezionati nello spazio di lavoro.", + "placeholder": "Seleziona progetti" + } + }, + "settings": { + "sidebar_label": "Automazioni", + "title": "Automazioni", + "description": "Standardizza i processi nel tuo spazio di lavoro con le automazioni globali." + }, + "table": { + "scope": { + "global": "Globale", + "project": { + "label": "Progetto", + "multiple": "Multipli", + "all": "Tutti" + } + } + } } } } diff --git a/packages/i18n/src/locales/it/common.json b/packages/i18n/src/locales/it/common.json index 475f5b4b356..6fda1b04957 100644 --- a/packages/i18n/src/locales/it/common.json +++ b/packages/i18n/src/locales/it/common.json @@ -17,6 +17,7 @@ "no": "No", "ok": "OK", "name": "Nome", + "unknown_user": "Utente sconosciuto", "description": "Descrizione", "search": "Cerca", "add_member": "Aggiungi membro", @@ -56,7 +57,8 @@ "no_worklogs": "Nessun registro di lavoro ancora", "no_history": "Nessuna cronologia ancora" }, - "appearance": "Aspetto", + "preferences": "Preferenze", + "language_and_time": "Lingua e ora", "notifications": "Notifiche", "workspaces": "Spazi di lavoro", "create_workspace": "Crea spazio di lavoro", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Qualcosa è andato storto. Per favore, riprova.", "load_more": "Carica di più", "select_or_customize_your_interface_color_scheme": "Seleziona o personalizza il tuo schema di colori dell'interfaccia.", + "timezone_setting": "Impostazione del fuso orario corrente.", + "language_setting": "Scegli la lingua utilizzata nell'interfaccia utente.", + "settings_moved_to_preferences": "Le impostazioni di fuso orario e lingua sono state spostate nelle preferenze.", + "go_to_preferences": "Vai alle preferenze", "select_the_cursor_motion_style_that_feels_right_for_you": "Seleziona lo stile di movimento del cursore più adatto a te.", "theme": "Tema", "smooth_cursor": "Cursore fluido", @@ -163,6 +169,7 @@ "project_created_successfully": "Progetto creato con successo", "project_created_successfully_description": "Progetto creato con successo. Ora puoi iniziare ad aggiungere elementi di lavoro.", "project_name_already_taken": "Il nome del progetto è già stato utilizzato.", + "project_name_cannot_contain_special_characters": "Il nome del progetto non può contenere caratteri speciali.", "project_identifier_already_taken": "L'identificatore del progetto è già stato utilizzato.", "project_cover_image_alt": "Immagine di copertina del progetto", "name_is_required": "Il nome è obbligatorio", @@ -207,6 +214,7 @@ "issues": "Elementi di lavoro", "cycles": "Cicli", "modules": "Moduli", + "pages": "Pagine", "intake": "Accoglienza", "renew": "Rinnova", "preview": "Anteprima", @@ -298,6 +306,7 @@ "start_date": "Data di inizio", "end_date": "Data di fine", "due_date": "Scadenza", + "target_date": "Data prevista", "estimate": "Stima", "change_parent_issue": "Cambia elemento di lavoro principale", "remove_parent_issue": "Rimuovi elemento di lavoro principale", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "La nuova password deve essere diversa dalla password precedente", "edited": "Modificato", "bot": "Bot", + "settings_description": "Gestisci le tue preferenze di account, spazio di lavoro e progetto in un unico posto. Passa da una scheda all'altra per configurare facilmente.", + "back_to_workspace": "Torna allo spazio di lavoro", "upgrade_request": "Chiedi all'admin dello spazio di lavoro di effettuare l'upgrade.", "copied_to_clipboard": "Copiato negli appunti", "copied_to_clipboard_description": "L'URL è stato copiato con successo negli appunti", @@ -411,6 +422,8 @@ "states": "Stati", "state": "Stato", "state_groups": "Gruppi di stati", + "state_group": "Gruppo di stati", + "priorities": "Priorità", "priority": "Priorità", "team_project": "Progetto di squadra", "project": "Progetto", @@ -419,11 +432,16 @@ "module": "Modulo", "modules": "Moduli", "labels": "Etichette", + "label": "Etichetta", + "admins": "Amministratori", + "users": "Utenti", + "guests": "Ospiti", "assignees": "Assegnatari", "assignee": "Assegnatario", "created_by": "Creato da", "none": "Nessuno", "link": "Link", + "estimates": "Stime", "estimate": "Stima", "created_at": "Creato il", "updated_at": "Aggiornato il", @@ -447,6 +465,8 @@ "work_item": "Elemento di lavoro", "work_items": "Elementi di lavoro", "sub_work_item": "Sotto-elemento di lavoro", + "views": "Visualizzazioni", + "pages": "Pagine", "add": "Aggiungi", "warning": "Avviso", "updating": "Aggiornamento in corso", @@ -472,7 +492,6 @@ "add_more": "Aggiungi altro", "defaults": "Predefiniti", "add_label": "Aggiungi etichetta", - "estimates": "Stime", "customize_time_range": "Personalizza intervallo di tempo", "loading": "Caricamento", "attachments": "Allegati", @@ -493,7 +512,7 @@ "workspace_level": "Livello dello spazio di lavoro", "order_by": { "label": "Ordina per", - "manual": "Manuale", + "manual": "Manuale - Classifica", "last_created": "Ultimo creato", "last_updated": "Ultimo aggiornato", "start_date": "Data di inizio", @@ -529,6 +548,7 @@ "continue": "Continua", "resend": "Reinvia", "relations": "Relazioni", + "dependencies": "Dipendenze", "errors": { "default": { "title": "Errore!", @@ -560,11 +580,27 @@ "quarter": "Trimestre", "press_for_commands": "Premi '/' per i comandi", "click_to_add_description": "Clicca per aggiungere una descrizione", + "on_track": "In linea", + "off_track": "Fuori rotta", + "at_risk": "A rischio", + "timeline": "Cronologia", + "completion": "Completamento", + "upcoming": "In arrivo", + "completed": "Completato", + "in_progress": "In corso", + "planned": "Pianificato", + "paused": "In pausa", "search": { "label": "Cerca", "placeholder": "Digita per cercare", "no_matches_found": "Nessuna corrispondenza trovata", - "no_matching_results": "Nessun risultato corrispondente" + "no_matching_results": "Nessun risultato corrispondente", + "min_chars": "Digita almeno {count} caratteri per cercare", + "error": "Errore durante il recupero dei risultati di ricerca", + "no_results": { + "title": "Nessun risultato corrispondente", + "description": "Rimuovi i criteri di ricerca per vedere tutti i risultati" + } }, "actions": { "edit": "Modifica", @@ -581,7 +617,9 @@ "clear_sorting": "Cancella ordinamento", "show_weekends": "Mostra weekend", "enable": "Abilita", - "disable": "Disabilita" + "disable": "Disabilita", + "copy_markdown": "Copia markdown", + "reply": "Rispondi" }, "name": "Nome", "discard": "Scarta", @@ -594,6 +632,7 @@ "disabled": "Disabilitato", "mandate": "Obbligo", "mandatory": "Obbligatorio", + "global": "Globale", "yes": "Sì", "no": "No", "please_wait": "Attendere prego", @@ -603,6 +642,7 @@ "or": "o", "next": "Successivo", "back": "Indietro", + "retry": "Riprova", "cancelling": "Annullamento in corso", "configuring": "Configurazione in corso", "clear": "Pulisci", @@ -616,8 +656,6 @@ "select": "Seleziona", "upgrade": "Aggiorna", "add_seats": "Aggiungi postazioni", - "label": "Etichetta", - "priorities": "Priorità", "projects": "Progetti", "workspace": "Spazio di lavoro", "workspaces": "Spazi di lavoro", @@ -659,30 +697,27 @@ "deactivated_user": "Utente disattivato", "apply": "Applica", "applying": "Applicazione", - "users": "Utenti", - "admins": "Amministratori", - "guests": "Ospiti", - "on_track": "In linea", - "off_track": "Fuori rotta", - "at_risk": "A rischio", - "timeline": "Cronologia", - "completion": "Completamento", - "upcoming": "In arrivo", - "completed": "Completato", - "in_progress": "In corso", - "planned": "Pianificato", - "paused": "In pausa", + "overview": "Panoramica", "no_of": "N. di {entity}", "resolved": "Risolto", + "get_started": "Inizia", "worklogs": "Registrazioni di lavoro", "project_updates": "Aggiornamenti del progetto", - "overview": "Panoramica", "workflows": "Flussi di lavoro", + "templates": "Modelli", + "business": "Business", "members_and_teamspaces": "Membri e teamspaces", + "recurring_work_items": "Elementi di lavoro ricorrenti", + "milestones": "Milestone", "open_in_full_screen": "Apri {page} a schermo intero", "details": "Dettagli", "project_structure": "Struttura del progetto", - "custom_properties": "Proprietà personalizzate" + "custom_properties": "Proprietà personalizzate", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Asse X", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane non si è avviato. Questo potrebbe essere dovuto al fatto che uno o più servizi Plane non sono riusciti ad avviarsi.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Scegli View Logs da setup.sh e dai log Docker per essere sicuro." }, + "customize_navigation": "Personalizza la navigazione", + "personal": "Personale", + "accordion_navigation_control": "Navigazione laterale a fisarmonica", + "horizontal_navigation_bar": "Navigazione a schede", + "show_limited_projects_on_sidebar": "Mostra progetti limitati nella barra laterale", + "enter_number_of_projects": "Inserisci il numero di progetti", + "pin": "Fissa", + "unpin": "Sblocca", "workspace_dashboards": "Dashboard", "pi_chat": "Plane AI", "in_app": "In-app", "forms": "Moduli", - "choose_workspace_for_integration": "Scegli uno spazio di lavoro per connettere questa app", - "integrations_description": "Le app che funzionano con Plane devono connettersi a uno spazio di lavoro dove sei amministratore.", - "create_a_new_workspace": "Crea uno spazio di lavoro nuovo", - "learn_more_about_workspaces": "Scopri di più sui tuoi spazi di lavoro", - "no_workspaces_to_connect": "Nessuno spazio di lavoro per connettere", - "no_workspaces_to_connect_description": "Devi creare uno spazio di lavoro per poter connettere le integrazioni e i modelli", + "milestones": "Milestone", + "milestones_description": "Le milestone forniscono un livello per allineare gli elementi di lavoro verso date di completamento condivise.", "file_upload": { "upload_text": "Clicca qui per caricare il file", "drag_drop_text": "Trascina e rilascia", "processing": "Elaborazione", - "invalid": "Tipo di file non valido", + "invalid_file_type": "Tipo di file non valido", "missing_fields": "Campi mancanti", "success": "{fileName} Caricato!" }, - "project_name_cannot_contain_special_characters": "Il nome del progetto non può contenere caratteri speciali.", "date": "Data", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/it/editor.json b/packages/i18n/src/locales/it/editor.json index beaa7fdc283..9a8a638c1bd 100644 --- a/packages/i18n/src/locales/it/editor.json +++ b/packages/i18n/src/locales/it/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Inserisci un URL valido." } + }, + "ai_block": { + "content": { + "placeholder": "Descrivi il contenuto di questo blocco", + "generated_here": "Il contenuto AI verrà generato qui" + }, + "block_types": { + "placeholder": "Seleziona tipo di blocco", + "summarize_page": "Riassumi pagina", + "custom_prompt": "Prompt personalizzato" + }, + "actions": { + "discard": "Scarta", + "generate": "Genera", + "generating": "Generazione in corso", + "rewriting": "Riscrittura in corso", + "rewrite": "Riscrivi", + "use_this": "Usa questo", + "refine": "Affina" + } } } diff --git a/packages/i18n/src/locales/it/empty-state.json b/packages/i18n/src/locales/it/empty-state.json index 21bef72f9d6..1af7d40eb99 100644 --- a/packages/i18n/src/locales/it/empty-state.json +++ b/packages/i18n/src/locales/it/empty-state.json @@ -249,10 +249,22 @@ "title": "Traccia i fogli ore per tutti i membri", "description": "Registra il tempo sugli elementi di lavoro per visualizzare fogli ore dettagliati per qualsiasi membro del team attraverso i progetti." }, + "group_syncing": { + "title": "Nessuna mappatura di gruppi ancora" + }, "template_setting": { "title": "Nessun modello ancora", "description": "Riduci i tempi di configurazione creando modelli per progetti, elementi di lavoro e pagine — e inizia nuovi lavori in pochi secondi.", "cta_primary": "Crea modello" + }, + "workflows": { + "title": "Nessun flusso di lavoro ancora", + "description": "Crea flussi di lavoro per gestire lo stato di avanzamento dei tuoi elementi di lavoro.", + "cta_primary": "Aggiungi nuovo flusso di lavoro", + "states": { + "title": "Aggiungi stati", + "description": "Seleziona gli stati attraverso i quali avanza l'elemento di lavoro." + } } } } diff --git a/packages/i18n/src/locales/it/integration.json b/packages/i18n/src/locales/it/integration.json index 802a5dbbb99..36520b8fa1f 100644 --- a/packages/i18n/src/locales/it/integration.json +++ b/packages/i18n/src/locales/it/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Errore del server nel caricamento degli stati" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Connetti e sincronizza i tuoi repository Bitbucket Data Center con Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Convalida i token IdP esterni per l'accesso API.", @@ -302,10 +306,10 @@ "generic_error": "Si è verificato un errore imprevisto durante la elaborazione della tua richiesta", "connection_not_found": "La connessione richiesta non è stata trovata", "multiple_connections_found": "Sono state trovate più connessioni di quanto previsto", + "cannot_create_multiple_connections": "Hai già connesso la tua organizzazione con uno spazio di lavoro. Per favore disconnetti la connessione esistente prima di connettere una nuova.", "installation_not_found": "L'installazione richiesta non è stata trovata", "user_not_found": "L'utente richiesto non è stato trovato", "error_fetching_token": "Impossibile ottenere il token di autenticazione", - "cannot_create_multiple_connections": "Hai già connesso la tua organizzazione con uno spazio di lavoro. Per favore disconnetti la connessione esistente prima di connettere una nuova.", "invalid_app_credentials": "Le credenziali dell'app fornite non sono valide", "invalid_app_installation_id": "Impossibile installare l'app" }, @@ -316,6 +320,7 @@ "pulling": "Trascinamento", "timed_out": "Tempo scaduto", "pulled": "Trascinato", + "progressing": "In corso", "transforming": "Trasformazione", "transformed": "Trasformato", "pushing": "Inserimento", diff --git a/packages/i18n/src/locales/it/module.json b/packages/i18n/src/locales/it/module.json index a9fdf427ff7..36f86a0e4ef 100644 --- a/packages/i18n/src/locales/it/module.json +++ b/packages/i18n/src/locales/it/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modulo} other {Moduli}}", - "no_module": "Nessun modulo" + "no_module": "Nessun modulo", + "select": "Aggiungi moduli" } } diff --git a/packages/i18n/src/locales/it/navigation.json b/packages/i18n/src/locales/it/navigation.json index ea17d1889da..db31c307f44 100644 --- a/packages/i18n/src/locales/it/navigation.json +++ b/packages/i18n/src/locales/it/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Nessun risultato trovato" + } + } + }, "sidebar": { + "stickies": "Stickies", + "your_work": "Il tuo lavoro", "projects": "Progetti", "pages": "Pagine", "new_work_item": "Nuovo elemento di lavoro", "home": "Home", - "your_work": "Il tuo lavoro", "inbox": "Posta in arrivo", "workspace": "workspace", "views": "Visualizzazioni", @@ -21,14 +29,6 @@ "epics": "Epiche", "upgrade_plan": "Piano di aggiornamento", "plane_pro": "Plane Pro", - "business": "Business", - "recurring_work_items": "Elementi di lavoro ricorrenti" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Nessun risultato trovato" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/it/page.json b/packages/i18n/src/locales/it/page.json index 743b837f2fa..7898785aec2 100644 --- a/packages/i18n/src/locales/it/page.json +++ b/packages/i18n/src/locales/it/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Connetti pagine", - "show_wiki_pages": "Mostra pagine wiki", - "link_pages_to": "Connetti pagine a", - "linked_pages": "Pagine collegate", - "no_description": "Questa pagina è vuota. Scrivi qualcosa e vedi qui come questo segnaposto", - "toasts": { - "link": { - "success": { - "title": "Pagine aggiornate", - "message": "Le pagine sono state aggiornate con successo" - }, - "error": { - "title": "Pagine non aggiornate", - "message": "Le pagine non possono essere aggiornate" - } - }, - "remove": { - "success": { - "title": "Pagina eliminata", - "message": "La pagina è stata eliminata con successo" - }, - "error": { - "title": "Pagina non eliminata", - "message": "La pagina non può essere eliminata" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Immagini mancanti", "description": "Aggiungi immagini per vederle qui." } + }, + "comments": { + "label": "Commenti", + "empty_state": { + "title": "Nessun commento", + "description": "Aggiungi commenti per vederli qui." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Il nome dello sticky non può superare i 100 caratteri.", + "already_exists": "Esiste già uno sticky senza descrizione" + }, + "created": { + "title": "Sticky creato", + "message": "Lo sticky è stato creato con successo" + }, + "not_created": { + "title": "Sticky non creato", + "message": "Lo sticky non può essere creato" + }, + "updated": { + "title": "Sticky aggiornato", + "message": "Lo sticky è stato aggiornato con successo" + }, + "not_updated": { + "title": "Sticky non aggiornato", + "message": "Lo sticky non può essere aggiornato" + }, + "removed": { + "title": "Sticky rimosso", + "message": "Lo sticky è stato rimosso con successo" + }, + "not_removed": { + "title": "Sticky non rimosso", + "message": "Lo sticky non può essere rimosso" } }, "open_button": "Apri pannello di navigazione", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Sposta", + "loading": "Spostamento" + }, + "cannot_move_to_teamspace": "Le pagine private e condivise non possono essere spostate in un teamspace.", "placeholders": { + "workspace_to_all": "Cerca progetti e teamspace", + "workspace_to_project": "Cerca progetti", + "project_to_all": "Cerca progetti e teamspace", + "project_to_project": "Cerca progetti", "project_to_all_with_wiki": "Cerca raccolte wiki, progetti e teamspace", "project_to_project_with_wiki": "Cerca raccolte wiki e progetti" }, "toasts": { + "success": { + "title": "Successo!", + "message": "Pagina spostata con successo." + }, + "error": { + "title": "Errore!", + "message": "Impossibile spostare la pagina. Riprova più tardi." + }, "collection_error": { "title": "Spostata nel wiki", "message": "La pagina è stata spostata nel wiki, ma non è stato possibile aggiungerla alla raccolta selezionata. Rimane in General." diff --git a/packages/i18n/src/locales/it/project-settings.json b/packages/i18n/src/locales/it/project-settings.json index 6e5a0977e7a..5fc17c535a9 100644 --- a/packages/i18n/src/locales/it/project-settings.json +++ b/packages/i18n/src/locales/it/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Membri", "project_lead": "Responsabile del progetto", + "project_lead_description": "Seleziona il responsabile del progetto.", "default_assignee": "Assegnatario predefinito", + "default_assignee_description": "Seleziona l’assegnatario predefinito del progetto.", + "project_subscribers": "Iscritti al progetto", + "project_subscribers_description": "Seleziona i membri che riceveranno le notifiche per questo progetto.", "guest_super_permissions": { "title": "Concedi accesso in sola lettura a tutti gli elementi di lavoro per gli utenti ospiti:", "sub_heading": "Questo permetterà agli ospiti di visualizzare tutti gli elementi di lavoro del progetto." @@ -30,13 +34,11 @@ "title": "Invita membri", "sub_heading": "Invita membri a lavorare sul tuo progetto.", "select_co_worker": "Seleziona un collega" - }, - "project_lead_description": "Seleziona il responsabile del progetto.", - "default_assignee_description": "Seleziona l’assegnatario predefinito del progetto.", - "project_subscribers": "Iscritti al progetto", - "project_subscribers_description": "Seleziona i membri che riceveranno le notifiche per questo progetto." + } }, "states": { + "heading": "Stati", + "description": "Definisci e personalizza gli stati del flusso di lavoro per tracciare l'avanzamento dei tuoi elementi di lavoro.", "describe_this_state_for_your_members": "Descrivi questo stato per i tuoi membri.", "empty_state": { "title": "Nessuno stato disponibile per il gruppo {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etichette", + "description": "Crea etichette personalizzate per categorizzare e organizzare i tuoi elementi di lavoro", "label_title": "Titolo etichetta", "label_title_is_required": "Il titolo dell'etichetta è obbligatorio", "label_max_char": "Il nome dell'etichetta non deve superare i 255 caratteri", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Stime", + "description": "Imposta sistemi di stima per tracciare e comunicare lo sforzo richiesto per ogni elemento di lavoro.", "label": "Stime", "title": "Abilita le stime per il mio progetto", - "description": "Ti aiutano a comunicare la complessità e il carico di lavoro del team.", + "enable_description": "Ti aiutano a comunicare la complessità e il carico di lavoro del team.", "no_estimate": "Nessuna stima", "new": "Nuovo sistema di stima", "create": { @@ -112,6 +118,16 @@ "title": "Riordinamento stime fallito", "message": "Non siamo riusciti a riordinare le stime, riprova" } + }, + "switch": { + "success": { + "title": "Sistema di stima creato", + "message": "Creato e abilitato con successo" + }, + "error": { + "title": "Errore", + "message": "Qualcosa è andato storto" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatizzazioni", + "heading": "Automazioni", + "description": "Configura azioni automatizzate per ottimizzare il flusso di gestione del progetto e ridurre le attività manuali.", "auto-archive": { "title": "Archivia automaticamente gli elementi di lavoro chiusi", "description": "Plane archiverà automaticamente gli elementi di lavoro che sono stati completati o annullati.", @@ -194,90 +212,116 @@ "description": "Configura GitHub e altre integrazioni per sincronizzare i tuoi elementi di lavoro del progetto." } }, - "cycles": { - "auto_schedule": { - "heading": "Pianificazione automatica dei cicli", - "description": "Mantieni i cicli in movimento senza configurazione manuale.", - "tooltip": "Crea automaticamente nuovi cicli in base alla pianificazione scelta.", - "edit_button": "Modifica", - "form": { - "cycle_title": { - "label": "Titolo del ciclo", - "placeholder": "Titolo", - "tooltip": "Il titolo sarà seguito da numeri per i cicli successivi. Ad esempio: Design - 1/2/3", - "validation": { - "required": "Il titolo del ciclo è obbligatorio", - "max_length": "Il titolo non deve superare 255 caratteri" - } - }, - "cycle_duration": { - "label": "Durata del ciclo", - "unit": "Settimane", - "validation": { - "required": "La durata del ciclo è obbligatoria", - "min": "La durata del ciclo deve essere di almeno 1 settimana", - "max": "La durata del ciclo non può superare 30 settimane", - "positive": "La durata del ciclo deve essere positiva" - } - }, - "cooldown_period": { - "label": "Periodo di raffreddamento", - "unit": "giorni", - "tooltip": "Pausa tra i cicli prima dell'inizio del successivo.", - "validation": { - "required": "Il periodo di raffreddamento è obbligatorio", - "negative": "Il periodo di raffreddamento non può essere negativo" - } - }, - "start_date": { - "label": "Giorno di inizio del ciclo", - "validation": { - "required": "La data di inizio è obbligatoria", - "past": "La data di inizio non può essere nel passato" - } + "workflows": { + "toggle": { + "title": "Abilita flussi di lavoro", + "description": "Imposta flussi di lavoro per controllare il movimento degli elementi di lavoro", + "no_states_tooltip": "Nessuno stato è stato aggiunto al flusso di lavoro.", + "no_work_item_types_tooltip": "Nessun tipo di elemento di lavoro è stato aggiunto al flusso di lavoro.", + "no_states_or_work_item_types_tooltip": "Nessuno stato o tipo di elemento di lavoro è stato aggiunto al flusso di lavoro.", + "toast": { + "loading": { + "enabling": "Abilitazione dei flussi di lavoro", + "disabling": "Disabilitazione dei flussi di lavoro" }, - "number_of_cycles": { - "label": "Numero di cicli futuri", - "validation": { - "required": "Il numero di cicli è obbligatorio", - "min": "È richiesto almeno 1 ciclo", - "max": "Non è possibile pianificare più di 3 cicli" - } + "success": { + "title": "Successo!", + "message": "Flussi di lavoro abilitati con successo." }, - "auto_rollover": { - "label": "Trasferimento automatico degli elementi di lavoro", - "tooltip": "Il giorno del completamento di un ciclo, spostare tutti gli elementi di lavoro non completati nel ciclo successivo." + "error": { + "title": "Errore!", + "message": "Impossibile abilitare i flussi di lavoro. Riprova." + } + } + }, + "heading": "Flussi di lavoro", + "description": "Automatizza le transizioni degli elementi di lavoro e imposta regole per controllare come le attività si spostano nella pipeline del tuo progetto.", + "add_button": "Aggiungi nuovo flusso di lavoro", + "search": "Cerca flussi di lavoro", + "detail": { + "define": "Definisci flusso di lavoro", + "add_states": "Aggiungi stati", + "unmapped_states": { + "title": "Stati non mappati rilevati", + "description": "Alcuni elementi di lavoro per i tipi selezionati si trovano attualmente in stati che non esistono in questo flusso di lavoro.", + "note": "Se abiliti questo flusso di lavoro, questi elementi verranno spostati automaticamente allo stato iniziale di questo flusso di lavoro.", + "label": "Stati mancanti", + "tooltip": "Alcuni elementi di lavoro si trovano in stati non mappati a questo flusso di lavoro. Apri il flusso di lavoro per rivedere." + } + }, + "select_states": { + "empty_state": { + "title": "Tutti gli stati sono in uso", + "description": "Tutti gli stati definiti per questo progetto sono già presenti nel tuo flusso di lavoro corrente." + } + }, + "default_footer": { + "fallback_message": "Questo flusso di lavoro si applica a qualsiasi tipo di elemento di lavoro che non è assegnato a un flusso di lavoro." + }, + "create": { + "heading": "Crea nuovo flusso di lavoro", + "name": { + "placeholder": "Aggiungi un nome univoco", + "validation": { + "max_length": "Il nome deve essere di meno di 255 caratteri", + "required": "Il nome è obbligatorio", + "invalid": "Il nome può contenere solo lettere, numeri, spazi, trattini e apostrofi" } }, - "toast": { - "toggle": { - "loading_enable": "Attivazione pianificazione automatica dei cicli", - "loading_disable": "Disattivazione pianificazione automatica dei cicli", - "success": { - "title": "Successo!", - "message": "Pianificazione automatica dei cicli attivata con successo." - }, - "error": { - "title": "Errore!", - "message": "Attivazione della pianificazione automatica dei cicli non riuscita." - } - }, - "save": { - "loading": "Salvataggio configurazione pianificazione automatica dei cicli", - "success": { - "title": "Successo!", - "message_create": "Configurazione pianificazione automatica dei cicli salvata con successo.", - "message_update": "Configurazione pianificazione automatica dei cicli aggiornata con successo." - }, - "error": { - "title": "Errore!", - "message_create": "Salvataggio configurazione pianificazione automatica dei cicli non riuscito.", - "message_update": "Aggiornamento configurazione pianificazione automatica dei cicli non riuscito." - } + "description": { + "placeholder": "Aggiungi una breve descrizione", + "validation": { + "invalid": "La descrizione può contenere solo lettere, numeri, spazi, trattini e apostrofi" } + }, + "work_item_type": { + "label": "Tipo di elemento di lavoro" + }, + "success": { + "title": "Successo!", + "message": "Flusso di lavoro creato con successo." + }, + "error": { + "title": "Errore!", + "message": "Impossibile creare il flusso di lavoro. Riprova." + } + }, + "update": { + "success": { + "title": "Successo!", + "message": "Flusso di lavoro aggiornato con successo." + }, + "error": { + "title": "Errore!", + "message": "Impossibile aggiornare il flusso di lavoro. Riprova." + } + }, + "delete": { + "loading": "Eliminazione del flusso di lavoro", + "success": { + "title": "Successo!", + "message": "Flusso di lavoro eliminato con successo." + }, + "error": { + "title": "Errore!", + "message": "Impossibile eliminare il flusso di lavoro. Riprova." + } + }, + "add_states": { + "success": { + "title": "Successo!", + "message": "Stati aggiunti con successo." + }, + "error": { + "title": "Errore!", + "message": "Impossibile aggiungere gli stati. Riprova." } } }, + "work_item_types": { + "heading": "Tipi di elementi di lavoro", + "description": "Crea e personalizza diversi tipi di elementi di lavoro con proprietà uniche" + }, "features": { "cycles": { "title": "Cicli", @@ -385,6 +429,98 @@ "success": "Funzionalità progetto aggiornata con successo.", "error": "Qualcosa è andato storto durante l'aggiornamento della funzionalità progetto. Riprova." } + }, + "project_updates": { + "heading": "Aggiornamenti del progetto", + "description": "Monitoraggio consolidato e tracciamento dell'avanzamento di questo progetto" + }, + "templates": { + "heading": "Modelli", + "description": "Risparmia l'80% del tempo speso nella creazione di progetti, elementi di lavoro e pagine quando usi i modelli." + }, + "cycles": { + "auto_schedule": { + "heading": "Pianificazione automatica dei cicli", + "description": "Mantieni i cicli in movimento senza configurazione manuale.", + "tooltip": "Crea automaticamente nuovi cicli in base alla pianificazione scelta.", + "edit_button": "Modifica", + "form": { + "cycle_title": { + "label": "Titolo del ciclo", + "placeholder": "Titolo", + "tooltip": "Il titolo sarà seguito da numeri per i cicli successivi. Ad esempio: Design - 1/2/3", + "validation": { + "required": "Il titolo del ciclo è obbligatorio", + "max_length": "Il titolo non deve superare 255 caratteri" + } + }, + "cycle_duration": { + "label": "Durata del ciclo", + "unit": "Settimane", + "validation": { + "required": "La durata del ciclo è obbligatoria", + "min": "La durata del ciclo deve essere di almeno 1 settimana", + "max": "La durata del ciclo non può superare 30 settimane", + "positive": "La durata del ciclo deve essere positiva" + } + }, + "cooldown_period": { + "label": "Periodo di raffreddamento", + "unit": "giorni", + "tooltip": "Pausa tra i cicli prima dell'inizio del successivo.", + "validation": { + "required": "Il periodo di raffreddamento è obbligatorio", + "negative": "Il periodo di raffreddamento non può essere negativo" + } + }, + "start_date": { + "label": "Giorno di inizio del ciclo", + "validation": { + "required": "La data di inizio è obbligatoria", + "past": "La data di inizio non può essere nel passato" + } + }, + "number_of_cycles": { + "label": "Numero di cicli futuri", + "validation": { + "required": "Il numero di cicli è obbligatorio", + "min": "È richiesto almeno 1 ciclo", + "max": "Non è possibile pianificare più di 3 cicli" + } + }, + "auto_rollover": { + "label": "Trasferimento automatico degli elementi di lavoro", + "tooltip": "Il giorno del completamento di un ciclo, spostare tutti gli elementi di lavoro non completati nel ciclo successivo." + } + }, + "toast": { + "toggle": { + "loading_enable": "Attivazione pianificazione automatica dei cicli", + "loading_disable": "Disattivazione pianificazione automatica dei cicli", + "success": { + "title": "Successo!", + "message": "Pianificazione automatica dei cicli attivata con successo." + }, + "error": { + "title": "Errore!", + "message": "Attivazione della pianificazione automatica dei cicli non riuscita." + } + }, + "save": { + "loading": "Salvataggio configurazione pianificazione automatica dei cicli", + "success": { + "title": "Successo!", + "message_create": "Configurazione pianificazione automatica dei cicli salvata con successo.", + "message_update": "Configurazione pianificazione automatica dei cicli aggiornata con successo." + }, + "error": { + "title": "Errore!", + "message_create": "Salvataggio configurazione pianificazione automatica dei cicli non riuscito.", + "message_update": "Aggiornamento configurazione pianificazione automatica dei cicli non riuscito." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/it/project.json b/packages/i18n/src/locales/it/project.json index f30579cb855..f6e9ff6f4a7 100644 --- a/packages/i18n/src/locales/it/project.json +++ b/packages/i18n/src/locales/it/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Salva visualizzazioni filtrate per il tuo progetto. Crea quante ne vuoi", + "description": "Le visualizzazioni sono un insieme di filtri salvati che usi frequentemente o a cui vuoi avere accesso rapido. Tutti i tuoi colleghi in un progetto possono vedere tutte le visualizzazioni e scegliere quella che fa per loro.", + "primary_button": { + "text": "Crea la tua prima visualizzazione", + "comic": { + "title": "Le visualizzazioni si basano sulle proprietà degli elementi di lavoro.", + "description": "Puoi creare una visualizzazione da qui con quante proprietà e filtri desideri." + } + }, + "filter": { + "title": "Nessuna visualizzazione corrispondente", + "description": "Nessuna visualizzazione corrisponde ai criteri di ricerca.\n Crea una nuova visualizzazione invece." + } + }, + "no_archived_issues": { + "title": "Nessun elemento di lavoro archiviato ancora", + "description": "Manualmente o tramite automazione, puoi archiviare gli elementi di lavoro completati o annullati. Trovali qui una volta archiviati.", + "primary_button": { + "text": "Imposta automazione" + } + }, + "issues_empty_filter": { + "title": "Nessun elemento di lavoro trovato corrispondente ai filtri applicati", + "secondary_button": { + "text": "Cancella tutti i filtri" + } + }, + "public": { + "title": "Nessuna pagina pubblica ancora", + "description": "Visualizza qui le pagine condivise con tutti nel tuo progetto.", + "primary_button": { + "text": "Crea la tua prima pagina" + } + }, + "archived": { + "title": "Nessuna pagina archiviata ancora", + "description": "Archivia le pagine che non sono più di tuo interesse. Potrai accedervi quando necessario." + }, + "shared": { + "title": "Nessuna pagina condivisa ancora", + "description": "Le pagine che altri hanno condiviso con te appariranno qui." + } + }, + "delete_view": { + "title": "Sei sicuro di voler eliminare questa visualizzazione?", + "content": "Se confermi, tutte le opzioni di ordinamento, filtro e visualizzazione + il layout che hai scelto per questa visualizzazione saranno eliminate permanentemente senza possibilità di ripristinarle." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Salva visualizzazioni filtrate per il tuo progetto. Crea quante ne vuoi", - "description": "Le visualizzazioni sono un insieme di filtri salvati che usi frequentemente o a cui vuoi avere accesso rapido. Tutti i tuoi colleghi in un progetto possono vedere tutte le visualizzazioni e scegliere quella che fa per loro.", - "primary_button": { - "text": "Crea la tua prima visualizzazione", - "comic": { - "title": "Le visualizzazioni si basano sulle proprietà degli elementi di lavoro.", - "description": "Puoi creare una visualizzazione da qui con quante proprietà e filtri desideri." - } - } - }, - "filter": { - "title": "Nessuna visualizzazione corrispondente", - "description": "Nessuna visualizzazione corrisponde ai criteri di ricerca.\n Crea una nuova visualizzazione invece." - } - }, - "delete_view": { - "title": "Sei sicuro di voler eliminare questa visualizzazione?", - "content": "Se confermi, tutte le opzioni di ordinamento, filtro e visualizzazione + il layout che hai scelto per questa visualizzazione saranno eliminate permanentemente senza possibilità di ripristinarle." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Manuale" } }, + "project_members": { + "full_name": "Nome completo", + "display_name": "Nome visualizzato", + "email": "Email", + "joining_date": "Data di adesione", + "role": "Ruolo" + }, "project": { "members_import": { "title": "Importa membri da CSV", diff --git a/packages/i18n/src/locales/it/settings.json b/packages/i18n/src/locales/it/settings.json index d8515d9d8d4..a5eb253a432 100644 --- a/packages/i18n/src/locales/it/settings.json +++ b/packages/i18n/src/locales/it/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferenze", + "description": "Personalizza la tua esperienza dell'app al modo in cui lavori" + }, "notifications": { + "heading": "Notifiche via email", + "description": "Rimani aggiornato sugli elementi di lavoro a cui sei iscritto. Abilita questa opzione per ricevere notifiche.", "select_default_view": "Seleziona vista predefinita", "compact": "Compatto", "full": "Schermo intero" + }, + "security": { + "heading": "Sicurezza" + }, + "api_tokens": { + "title": "Token di accesso personali", + "description": "Genera token API sicuri per integrare i tuoi dati con sistemi e applicazioni esterni." + }, + "activity": { + "heading": "Attività", + "description": "Traccia le tue azioni e modifiche recenti su tutti i progetti ed elementi di lavoro." + }, + "connections": { + "title": "Connessioni", + "heading": "Connessioni", + "description": "Gestisci le impostazioni delle connessioni del tuo spazio di lavoro." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profilo", "security": "Sicurezza", "activity": "Attività", - "appearance": "Aspetto", + "preferences": "Preferenze", "notifications": "Notifiche", + "api-tokens": "Token di accesso personali", "connections": "Connessioni" }, "tabs": { diff --git a/packages/i18n/src/locales/it/template.json b/packages/i18n/src/locales/it/template.json index bd4bc6f6822..40de4749c6e 100644 --- a/packages/i18n/src/locales/it/template.json +++ b/packages/i18n/src/locales/it/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Modelli", "description": "Risparmia l'80% del tempo dedicato alla creazione di progetti, elementi di lavoro e pagine quando utilizzi i modelli.", + "new_project_template": "Nuovo modello di progetto", + "new_work_item_template": "Nuovo modello di elemento di lavoro", + "new_page_template": "Nuovo modello di pagina", "options": { "project": { "label": "Modelli di progetto" @@ -157,6 +160,14 @@ "required": "Almeno una parola chiave è obbligatoria" } }, + "website": { + "label": "URL del sito web", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL non valido", + "maxLength": "L'URL deve contenere meno di 800 caratteri" + } + }, "company_name": { "label": "Nome dell'azienda", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Indirizzo email non valido", - "required": "L'email di supporto è obbligatoria", "maxLength": "L'email di supporto deve contenere meno di 255 caratteri" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Nessuna etichetta ancora. Crea etichette per aiutare a organizzare e filtrare gli elementi di lavoro nel tuo progetto." }, + "no_modules": { + "description": "Nessun modulo ancora. Organizza il lavoro in sotto-progetti con responsabili e assegnatari dedicati." + }, "no_work_items": { "description": "Nessun elemento di lavoro ancora. Aggiungi uno per strutturare il tuo lavoro meglio." }, diff --git a/packages/i18n/src/locales/it/tour.json b/packages/i18n/src/locales/it/tour.json index e5cfd83ecb1..6b3a02872ff 100644 --- a/packages/i18n/src/locales/it/tour.json +++ b/packages/i18n/src/locales/it/tour.json @@ -110,6 +110,12 @@ "description": "Un elemento di lavoro può essere posticipato per rivederlo in un secondo momento. Verrà spostato in fondo all elenco delle richieste aperte." } }, + "mcp_connectors": { + "step_zero": { + "title": "Smetti di cambiare scheda. Connetti il tuo mondo.", + "description": "Collega GitHub, Slack per tracciare le PR e riassumere le chat direttamente in Plane AI." + } + }, "navigation": { "modal": { "title": "Navigazione, reinventata", diff --git a/packages/i18n/src/locales/it/update.json b/packages/i18n/src/locales/it/update.json index 94a067354d1..e7a619470ed 100644 --- a/packages/i18n/src/locales/it/update.json +++ b/packages/i18n/src/locales/it/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "Progresso", + "since_last_update": "Dal ultimo aggiornamento", + "comments": "{count, plural, one {# commento} other {# commenti}}" + }, "add_update": "Aggiungi aggiornamento", "add_update_placeholder": "Scrivi il tuo aggiornamento qui", "empty": { "title": "Nessun aggiornamento", "description": "Puoi vedere gli aggiornamenti qui." }, - "delete": { - "title": "Elimina aggiornamento", - "confirmation": "Sei sicuro di voler eliminare questo aggiornamento? Questa azione è irreversibile.", - "success": { - "title": "Aggiornamento eliminato", - "message": "L'aggiornamento è stato eliminato con successo." - }, - "error": { - "title": "Aggiornamento non eliminato", - "message": "L'aggiornamento non può essere eliminato." - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "Progresso", - "since_last_update": "Dal ultimo aggiornamento", - "comments": "{count, plural, one {# commento} other {# commenti}}" - }, "create": { "success": { "title": "Aggiornamento creato", @@ -55,6 +43,18 @@ "message": "L'aggiornamento non può essere creato." } }, + "delete": { + "title": "Elimina aggiornamento", + "confirmation": "Sei sicuro di voler eliminare questo aggiornamento? Questa azione è irreversibile.", + "success": { + "title": "Aggiornamento eliminato", + "message": "L'aggiornamento è stato eliminato con successo." + }, + "error": { + "title": "Aggiornamento non eliminato", + "message": "L'aggiornamento non può essere eliminato." + } + }, "update": { "success": { "title": "Aggiornamento aggiornato", diff --git a/packages/i18n/src/locales/it/wiki.json b/packages/i18n/src/locales/it/wiki.json index fa4b6253eb4..ebb71e650c9 100644 --- a/packages/i18n/src/locales/it/wiki.json +++ b/packages/i18n/src/locales/it/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Impossibile creare la pagina o aggiungerla alla raccolta. Riprova.", "collection_link_copied": "Link della raccolta copiato negli appunti." } + }, + "wiki": { + "upgrade_flow": { + "title": "Aggiorna per sbloccare il Wiki", + "description": "Sblocca pagine pubbliche, cronologia delle versioni, pagine condivise, collaborazione in tempo reale e pagine dello spazio di lavoro per wiki, documenti aziendali e basi di conoscenza con Plane Pro.", + "upgrade_button": { + "text": "Aggiorna" + }, + "learn_more_button": { + "text": "Scopri di più" + }, + "download_button": { + "text": "Scarica dati", + "loading": "Download in corso" + }, + "tabs": { + "nested_pages": "Pagine annidate", + "add_embeds": "Aggiungi incorporamenti", + "publish_pages": "Pubblica pagine", + "comments": "Commenti" + } + }, + "nested_pages_download_banner": { + "title": "Le pagine annidate richiedono un piano a pagamento. Aggiorna per sbloccare." + } } } diff --git a/packages/i18n/src/locales/it/work-item-type.json b/packages/i18n/src/locales/it/work-item-type.json index 400fa7b8d65..ca4e085f6cf 100644 --- a/packages/i18n/src/locales/it/work-item-type.json +++ b/packages/i18n/src/locales/it/work-item-type.json @@ -3,11 +3,25 @@ "label": "Tipi di elemento di lavoro", "label_lowercase": "tipi di elementi di lavoro", "settings": { - "title": "Tipi di elemento di lavoro", + "description": "Personalizza e aggiungi le tue proprietà per adattarle alle esigenze del tuo team.", + "cant_delete_default_message": "Il tipo di elemento di lavoro non può essere eliminato perché è impostato come tipo predefinito per questo progetto.", + "set_as_default": "Imposta come predefinito", + "cant_set_default_inactive_message": "Attiva questo tipo prima di impostarlo come predefinito", + "set_default_confirmation": { + "title": "Imposta come tipo di elemento di lavoro predefinito", + "description": "Impostando {name} come predefinito, verrà importato in tutti i progetti di questo spazio di lavoro. Tutti i nuovi elementi di lavoro utilizzeranno questo tipo per impostazione predefinita.", + "confirm_button": "Imposta come predefinito" + }, "properties": { "title": "Proprietà personalizzate", + "description": "Crea e personalizza le proprietà.", "tooltip": "Ogni tipo di elemento di lavoro viene fornito con un set predefinito di proprietà come Titolo, Descrizione, Assegnatario, Stato, Priorità, Data di inizio, Data di scadenza, Modulo, Ciclo etc. Puoi anche personalizzare e aggiungere le tue proprietà per adattarle alle esigenze del tuo team.", "add_button": "Aggiungi nuova proprietà", + "project": { + "add_button": { + "import_from_workspace": "Importa dallo spazio di lavoro" + } + }, "dropdown": { "label": "Tipo di proprietà", "placeholder": "Seleziona tipo" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Crea nuova proprietà personalizzata", + "update": "Aggiorna proprietà personalizzata" + }, "form": { "display_name": { "placeholder": "Titolo" @@ -213,9 +231,50 @@ "description": "Nuove proprietà che aggiungi per questo tipo di elemento di lavoro appariranno qui." } }, + "types": { + "title": "Tipi", + "description": "Crea e personalizza tipi di elementi di lavoro con proprietà.", + "sort_options": { + "project_count": "Numero di progetti di cui fa parte" + }, + "filter_options": { + "show_active": "Mostra attivi", + "show_inactive": "Mostra inattivi" + }, + "project": { + "add_button": { + "create_new": "Crea nuovo", + "import_from_workspace": "Importa dallo spazio di lavoro" + }, + "banner": { + "with_access": "Abilita i tipi di elementi di lavoro per importare i tipi dal livello dello spazio di lavoro", + "without_access": "I tipi di elementi di lavoro sono disabilitati. Contatta l'admin dello spazio di lavoro per abilitarli nelle impostazioni dello spazio di lavoro." + } + } + }, + "linked_properties": { + "title": "Proprietà personalizzate", + "add_button": "Aggiungi proprietà", + "modal": { + "title": "Aggiungi proprietà", + "empty": { + "title": "Nessuna proprietà disponibile", + "description": "Tutte le proprietà sono già state collegate a questo tipo." + } + }, + "unlink_confirmation": { + "title": "Scollega proprietà", + "description": "Scollegando questa proprietà verranno eliminati permanentemente tutti i suoi valori su ogni elemento di lavoro che utilizza questo tipo. Questa azione non può essere annullata.", + "input_label": "Digita", + "input_label_suffix": "per continuare:", + "confirm": "Scollega proprietà", + "loading": "Scollegamento" + } + }, "item_delete_confirmation": { "title": "Elimina questo tipo", "description": "L'eliminazione dei tipi può comportare la perdita di dati esistenti.", + "can_disable_warning": "Vuoi disabilitare il tipo invece?", "primary_button": "Sì, eliminalo", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Impossibile eliminare il tipo di elemento di lavoro predefinito", "cannot_delete_work_item_type_with_associated_work_items": "Impossibile eliminare il tipo di elemento di lavoro con elementi di lavoro associati" - }, - "can_disable_warning": "Vuoi disabilitare il tipo invece?" - }, - "cant_delete_default_message": "Il tipo di elemento di lavoro non può essere eliminato perché è impostato come tipo predefinito per questo progetto.", - "set_as_default": "Imposta come predefinito", - "cant_set_default_inactive_message": "Attiva questo tipo prima di impostarlo come predefinito", - "set_default_confirmation": { - "title": "Imposta come tipo di elemento di lavoro predefinito", - "description": "Impostando {name} come predefinito, verrà importato in tutti i progetti di questo spazio di lavoro. Tutti i nuovi elementi di lavoro utilizzeranno questo tipo per impostazione predefinita.", - "confirm_button": "Imposta come predefinito" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Errore!", "message": { + "default": "Impossibile creare il tipo di elemento di lavoro. Riprova!", "conflict": "Il tipo {name} esiste già. Scegli un nome diverso." } } @@ -269,6 +320,7 @@ "error": { "title": "Errore!", "message": { + "default": "Impossibile aggiornare il tipo di elemento di lavoro. Riprova!", "conflict": "Il tipo {name} esiste già. Scegli un nome diverso." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Errore di convalida!", + "title": "Salvare interromperà i collegamenti esistenti", "content": { "intro": "Il tipo di elemento di lavoro {workItemTypeName} include:", - "parent_items": "{count, plural, one {elemento di lavoro padre} other {elementi di lavoro padre}}", + "parent_items": "{count, plural, one {Verrà rimosso # collegamento padre} other {Verranno rimossi # collegamenti padre}}.", "child_items": "{count, plural, one {sotto-elemento di lavoro} other {sotto-elementi di lavoro}}", "parent_line_suffix_when_also_children": ", e ", "footer": "Questa modifica rimuoverà le relazioni padre-figlio dagli elementi di lavoro esistenti del tipo {workItemTypeName}." }, "confirm_input": { - "label": "Digita «Conferma» per continuare.", - "placeholder": "Conferma" + "label": "Digita «conferma» per continuare.", + "placeholder": "conferma" }, "error_toast": { "title": "Errore!", - "message": "Impossibile interrompere la gerarchia. Riprovare." + "message": "Impossibile scollegare e salvare. Riprovare." }, "confirm_button": { - "loading": "Applicazione in corso", - "default": "Applica e scollega" + "loading": "Salvataggio", + "default": "Salva comunque" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/it/work-item.json b/packages/i18n/src/locales/it/work-item.json index ad94f1bbab9..7622c815bb8 100644 --- a/packages/i18n/src/locales/it/work-item.json +++ b/packages/i18n/src/locales/it/work-item.json @@ -20,6 +20,7 @@ "due_date": "Aggiungi scadenza", "parent": "Aggiungi elemento di lavoro principale", "sub_issue": "Aggiungi sotto-elemento di lavoro", + "dependency": "Aggiungi dipendenza", "relation": "Aggiungi relazione", "link": "Aggiungi link", "existing": "Aggiungi elemento di lavoro esistente" @@ -110,6 +111,43 @@ "copy_link": { "success": "Link del commento copiato negli appunti", "error": "Errore durante la copia del link del commento. Riprova più tardi." + }, + "replies": { + "create": { + "submit_button": "Aggiungi risposta", + "placeholder": "Aggiungi risposta" + }, + "toast": { + "fetch": { + "error": { + "message": "Impossibile recuperare le risposte" + } + }, + "create": { + "success": { + "message": "Risposta creata con successo" + }, + "error": { + "message": "Impossibile creare la risposta" + } + }, + "update": { + "success": { + "message": "Risposta aggiornata con successo" + }, + "error": { + "message": "Impossibile aggiornare la risposta" + } + }, + "delete": { + "success": { + "message": "Risposta eliminata con successo" + }, + "error": { + "message": "Impossibile eliminare la risposta" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Deseleziona tutto" }, "open_in_full_screen": "Apri l'elemento di lavoro a schermo intero", + "duplicate": { + "modal": { + "title": "Crea una copia in un altro progetto", + "description1": "Questo crea una copia dell'elemento di lavoro.", + "description2": "Tutti i dati delle proprietà verranno rimossi durante la duplicazione.", + "placeholder": "Seleziona un progetto" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Elemento di lavoro duplicato con successo" + }, + "error": { + "message": "Impossibile duplicare l'elemento di lavoro" + } + } + }, + "pages": { + "link_pages": "Collega pagine", + "show_wiki_pages": "Mostra pagine Wiki", + "link_pages_to": "Collega pagine a", + "linked_pages": "Pagine collegate", + "no_description": "Questa è una pagina vuota. Perché non scrivi qualcosa all'interno e vedilo apparire qui come questo segnaposto", + "toasts": { + "link": { + "success": { + "title": "Pagine aggiornate", + "message": "Pagine aggiornate con successo" + }, + "error": { + "title": "Aggiornamento pagine fallito", + "message": "Aggiornamento pagine fallito" + } + }, + "remove": { + "success": { + "title": "Pagina rimossa", + "message": "Pagina rimossa con successo" + }, + "error": { + "title": "Rimozione pagina fallita", + "message": "Rimozione pagina fallita" + } + } + } + }, "vote": { "click_to_upvote": "Clicca per votare a favore", "click_to_downvote": "Clicca per votare contro", @@ -241,54 +326,6 @@ "title": "Impossibile aggiornare gli elementi di lavoro", "message": "Il cambiamento di stato non è consentito per alcuni elementi di lavoro. Assicurati che il cambiamento di stato sia consentito." } - }, - "workflows": { - "toggle": { - "title": "Abilita flussi di lavoro", - "description": "Imposta i flussi di lavoro per controllare lo spostamento degli elementi di lavoro", - "no_states_tooltip": "Nessuno stato è stato aggiunto al flusso di lavoro.", - "toast": { - "loading": { - "enabling": "Attivazione dei flussi di lavoro", - "disabling": "Disattivazione dei flussi di lavoro" - }, - "success": { - "title": "Successo!", - "message": "Flussi di lavoro abilitati con successo." - }, - "error": { - "title": "Errore!", - "message": "Impossibile abilitare i flussi di lavoro. Riprova." - } - } - }, - "heading": "Flussi di lavoro", - "description": "Automatizza le transizioni degli elementi di lavoro e imposta regole per controllare come le attività si muovono nel flusso del progetto.", - "add_button": "Aggiungi nuovo flusso di lavoro", - "search": "Cerca flussi di lavoro", - "detail": { - "define": "Definisci flusso di lavoro", - "add_states": "Aggiungi stati", - "unmapped_states": { - "title": "Rilevati stati non mappati", - "description": "Alcuni elementi di lavoro dei tipi selezionati si trovano attualmente in stati che non esistono in questo flusso di lavoro.", - "note": "Se abiliti questo flusso di lavoro, questi elementi verranno automaticamente spostati nello stato iniziale di questo flusso di lavoro.", - "label": "Stati mancanti", - "tooltip": "Alcuni elementi di lavoro si trovano in stati che non sono mappati a questo flusso di lavoro. Apri il flusso di lavoro per verificarlo." - } - }, - "select_states": { - "empty_state": { - "title": "Tutti gli stati sono in uso", - "description": "Tutti gli stati definiti per questo progetto sono già presenti nel flusso di lavoro corrente." - } - }, - "default_footer": { - "fallback_message": "Questo flusso di lavoro si applica a qualsiasi tipo di elemento di lavoro che non è assegnato a nessun flusso di lavoro." - }, - "create": { - "heading": "Crea nuovo flusso di lavoro" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/it/workspace-settings.json b/packages/i18n/src/locales/it/workspace-settings.json index 2dc839a675c..9f87130868b 100644 --- a/packages/i18n/src/locales/it/workspace-settings.json +++ b/packages/i18n/src/locales/it/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Fatturazione e piani", + "description": "Scegli il tuo piano, gestisci gli abbonamenti e aggiorna facilmente man mano che le tue esigenze crescono.", "title": "Fatturazione e Piani", "current_plan": "Piano attuale", "free_plan": "Stai attualmente utilizzando il piano gratuito", "view_plans": "Visualizza piani" }, "exports": { + "heading": "Esportazioni", + "description": "Esporta i dati del tuo progetto in vari formati e accedi alla cronologia delle esportazioni con i link per il download.", "title": "Esportazioni", "exporting": "Esportazione in corso", "previous_exports": "Esportazioni precedenti", "export_separate_files": "Esporta i dati in file separati", + "exporting_projects": "Esportazione del progetto", + "format": "Formato", "filters_info": "Applica filtri per esportare elementi di lavoro specifici in base ai tuoi criteri.", "modal": { "title": "Esporta in", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook", + "description": "Automatizza le notifiche verso servizi esterni quando si verificano eventi del progetto.", "title": "Webhooks", "add_webhook": "Aggiungi webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integrazioni", + "heading": "Integrazioni", + "description": "Connettiti a strumenti e servizi popolari per sincronizzare il tuo lavoro nell'intero ecosistema del tuo flusso di lavoro.", "page_title": "Lavora con i tuoi dati Plane nelle app disponibili o nelle tue.", "page_description": "Visualizza tutte le integrazioni utilizzate da questo workspace o da te." }, "imports": { - "title": "Importazioni" + "title": "Importazioni", + "heading": "Importazioni", + "description": "Connetti e importa dati dai tuoi strumenti di gestione progetti esistenti per ottimizzare l'integrazione del flusso di lavoro." }, "worklogs": { - "title": "Registrazioni di lavoro" + "title": "Registrazioni di lavoro", + "heading": "Registrazioni di lavoro", + "description": "Scarica le registrazioni di lavoro, alias timesheet, per chiunque in qualsiasi progetto." }, "group_syncing": { "title": "Sincronizzazione gruppi", @@ -242,7 +256,10 @@ "description": "Configura il tuo dominio e abilita Single sign-on" }, "project_states": { - "title": "Stati del progetto" + "title": "Stati del progetto", + "heading": "Visualizza una panoramica dei progressi per tutti i progetti.", + "description": "Gli stati dei progetti sono una funzionalità esclusiva di Plane per tracciare i progressi di tutti i tuoi progetti in base a qualsiasi proprietà del progetto.", + "go_to_settings": "Vai alle impostazioni" }, "projects": { "title": "Progetti", @@ -252,6 +269,16 @@ "labels": "Etichette del progetto" } }, + "templates": { + "title": "Modelli", + "heading": "Modelli", + "description": "Risparmia l'80% del tempo dedicato alla creazione di progetti, elementi di lavoro e pagine quando usi i modelli." + }, + "relations": { + "title": "Relazioni", + "heading": "Relazioni", + "description": "Crea e gestisci tipi di relazione che collegano elementi di lavoro nel tuo spazio di lavoro." + }, "cancel_trial": { "title": "Cancella la tua prova prima.", "description": "Hai una prova attiva per uno dei nostri piani pagati. Per procedere, per favore cancella prima.", @@ -263,6 +290,7 @@ "cancel_error_message": "Prova di nuovo, per favore." }, "applications": { + "internal": "Interno", "title": "Applicazioni", "applicationId_copied": "ID applicazione copiato negli appunti", "clientId_copied": "ID cliente copiato negli appunti", @@ -271,10 +299,61 @@ "your_apps": "Le tue app", "connect": "Connetti", "connected": "Connesso", + "disconnect": "Disconnetti", "install": "Installa", "installed": "Installato", "configure": "Configura", "app_available": "Hai reso questa app disponibile per l'uso con un workspace Plane", + "app_credentials_regenrated": { + "title": "Le credenziali dell'app sono state rigenerate con successo", + "description": "Sostituisci il client secret ovunque venga utilizzato. Il secret precedente non è più valido." + }, + "app_created": { + "title": "App creata con successo", + "description": "Usa le credenziali per installare l'app in uno spazio di lavoro Plane" + }, + "installed_apps": "App installate", + "all_apps": "Tutte le app", + "internal_apps": "App interne", + "app_name_title": "Come chiamerai questa app", + "app_description_title": { + "label": "Descrizione lunga", + "placeholder": "Scrivi una descrizione lunga per il marketplace. Premi '/' per i comandi." + }, + "authorization_grant_type": { + "title": "Tipo di connessione", + "description": "Scegli se la tua app deve essere installata una volta per il workspace o permettere a ogni utente di collegare il proprio account" + }, + "website": { + "title": "Sito web", + "description": "Link al sito web della tua app.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Creatore di app", + "description": "La persona o l'organizzazione che crea l'app." + }, + "app_maker_error": "Il creatore dell'app è obbligatorio", + "setup_url": { + "label": "URL di configurazione", + "description": "Gli utenti verranno reindirizzati a questo URL quando installeranno l'app.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL del webhook", + "description": "Qui invieremo eventi e aggiornamenti webhook dagli workspace in cui la tua app è installata.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Secret del webhook", + "description": "Secret utilizzato per verificare le richieste webhook in arrivo.", + "placeholder": "Inserisci una chiave segreta casuale" + }, + "redirect_uris": { + "label": "URI di reindirizzamento (separate da spazi)", + "description": "Gli utenti verranno reindirizzati a questo percorso dopo essersi autenticati con Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Connetti un workspace Plane per iniziare a usarla", "client_id_and_secret": "ID e Secret Cliente", "client_id_and_secret_description": "Copia e salva questa chiave segreta. Non potrai più vedere questa chiave dopo aver cliccato su Chiudi.", @@ -286,23 +365,13 @@ "slug_already_exists": "Lo slug esiste già", "failed_to_create_application": "Impossibile creare l'applicazione", "upload_logo": "Carica Logo", - "app_name_title": "Come chiamerai questa app", "app_name_error": "Il nome dell'app è obbligatorio", "app_short_description_title": "Dai una breve descrizione a questa app", "app_short_description_error": "La breve descrizione dell'app è obbligatoria", - "app_description_title": { - "label": "Descrizione lunga", - "placeholder": "Scrivi una descrizione lunga per il marketplace. Premi '/' per i comandi." - }, - "authorization_grant_type": { - "title": "Tipo di connessione", - "description": "Scegli se la tua app deve essere installata una volta per il workspace o permettere a ogni utente di collegare il proprio account" - }, "app_description_error": "La descrizione dell'app è obbligatoria", "app_slug_title": "Slug dell'app", "app_slug_error": "Lo slug dell'app è obbligatorio", - "app_maker_title": "Creatore dell'app", - "app_maker_error": "Il creatore dell'app è obbligatorio", + "invalid_website_error": "Sito web non valido", "webhook_url_title": "URL del Webhook", "webhook_url_error": "L'URL del webhook è obbligatorio", "invalid_webhook_url_error": "URL del webhook non valido", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Inserisci le origini separate da spazi da cui l'app potrà effettuare richieste, ad esempio app.com example.com", "create_app": "Crea app", "update_app": "Aggiorna app", + "build_your_own_app": "Crea la tua app", + "edit_app_details": "Modifica i dettagli dell'app", "regenerate_client_secret_description": "Rigenera il secret cliente. Se rigeneri il secret, potrai copiare la chiave o scaricarla in un file CSV subito dopo.", "regenerate_client_secret": "Rigenera secret cliente", "regenerate_client_secret_confirm_title": "Sei sicuro di voler rigenerare il secret cliente?", @@ -362,7 +433,6 @@ "video_url_title": "URL del Video", "video_url_error": "Il URL del video è obbligatorio", "invalid_video_url_error": "URL del video non valido", - "setup_url_title": "URL di Setup", "setup_url_error": "Il URL di setup è obbligatorio", "invalid_setup_url_error": "URL di setup non valido", "configuration_url_title": "URL di configurazione", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "File non valido o supera il limite di dimensione ({size} MB)", "uploading": "Caricamento...", "upload_and_save": "Carica e salva", - "app_credentials_regenrated": { - "title": "Le credenziali dell'app sono state rigenerate con successo", - "description": "Sostituisci il client secret ovunque venga utilizzato. Il secret precedente non è più valido." - }, - "app_created": { - "title": "App creata con successo", - "description": "Usa le credenziali per installare l'app in uno spazio di lavoro Plane" - }, - "installed_apps": "App installate", - "all_apps": "Tutte le app", - "internal_apps": "App interne", - "website": { - "title": "Sito web", - "description": "Link al sito web della tua app.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Creatore di app", - "description": "La persona o l'organizzazione che crea l'app." - }, - "setup_url": { - "label": "URL di configurazione", - "description": "Gli utenti verranno reindirizzati a questo URL quando installeranno l'app.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL del webhook", - "description": "Qui invieremo eventi e aggiornamenti webhook dagli workspace in cui la tua app è installata.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI di reindirizzamento (separate da spazi)", - "description": "Gli utenti verranno reindirizzati a questo percorso dopo essersi autenticati con Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Richiesta di installazione", "app_consent_no_access_description": "Questa app può essere installata solo dopo che un amministratore del workspace l'ha installata. Contatta l'amministratore del tuo workspace per procedere.", + "app_consent_unapproved_title": "Questa app non è stata ancora esaminata o approvata da Plane.", + "app_consent_unapproved_description": "Assicurati di fidarti di questa app prima di connetterla al tuo spazio di lavoro.", + "go_to_app": "Vai all'app", "enable_app_mentions": "Abilita menzioni dell'app", "enable_app_mentions_tooltip": "Quando è abilitato, gli utenti possono menzionare o assegnare Work Item a questa applicazione.", "scopes": "Ambiti", @@ -433,15 +472,18 @@ "profile": "Accesso alle informazioni del profilo utente", "agents": "Accesso agli agenti e a tutte le entità correlate", "assets": "Accesso agli asset e a tutte le entità correlate" - }, - "build_your_own_app": "Crea la tua app", - "edit_app_details": "Modifica i dettagli dell'app", - "internal": "Interno" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Vedi il tuo lavoro diventare più intelligente e più veloce con l'IA che è connessa in modo nativo al tuo lavoro e alla tua base di conoscenza." + }, + "runners": { + "title": "Plane Runner", + "heading": "Script", + "new_script": "Nuovo script", + "description": "Automatizza i tuoi flussi di lavoro con script personalizzati e regole di automazione." } }, "empty_state": { diff --git a/packages/i18n/src/locales/it/workspace.json b/packages/i18n/src/locales/it/workspace.json index 7e09f4e4640..64b7e1258ea 100644 --- a/packages/i18n/src/locales/it/workspace.json +++ b/packages/i18n/src/locales/it/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Ambito e Domanda", "custom": "Analisi personalizzata" }, + "total": "Totale {entity}", + "started_work_items": "{entity} iniziati", + "backlog_work_items": "{entity} nel backlog", + "un_started_work_items": "{entity} non avviati", + "completed_work_items": "{entity} completati", + "project_insights": "Approfondimenti sul progetto", + "summary_of_projects": "Riepilogo dei progetti", + "all_projects": "Tutti i progetti", + "trend_on_charts": "Tendenza nei grafici", + "active_projects": "Progetti attivi", + "customized_insights": "Approfondimenti personalizzati", + "created_vs_resolved": "Creato vs Risolto", "empty_state": { - "customized_insights": { - "description": "Gli elementi di lavoro assegnati a te, suddivisi per stato, verranno visualizzati qui.", - "title": "Nessun dato disponibile" + "project_insights": { + "title": "Nessun dato disponibile", + "description": "Gli elementi di lavoro assegnati a te, suddivisi per stato, verranno visualizzati qui." }, "created_vs_resolved": { - "description": "Gli elementi di lavoro creati e risolti nel tempo verranno visualizzati qui.", - "title": "Nessun dato disponibile" + "title": "Nessun dato disponibile", + "description": "Gli elementi di lavoro creati e risolti nel tempo verranno visualizzati qui." }, - "project_insights": { + "customized_insights": { "title": "Nessun dato disponibile", "description": "Gli elementi di lavoro assegnati a te, suddivisi per stato, verranno visualizzati qui." }, @@ -132,29 +144,11 @@ "description": "Le analisi delle tendenze di intake verranno visualizzate qui. Aggiungi elementi di lavoro all’intake per iniziare a monitorare le tendenze." } }, - "created_vs_resolved": "Creato vs Risolto", - "customized_insights": "Approfondimenti personalizzati", - "backlog_work_items": "{entity} nel backlog", - "active_projects": "Progetti attivi", - "trend_on_charts": "Tendenza nei grafici", - "all_projects": "Tutti i progetti", - "summary_of_projects": "Riepilogo dei progetti", - "project_insights": "Approfondimenti sul progetto", - "started_work_items": "{entity} iniziati", - "total_work_items": "Totale {entity}", - "total_projects": "Progetti totali", - "total_admins": "Totale amministratori", - "total_users": "Totale utenti", - "total_intake": "Entrate totali", - "un_started_work_items": "{entity} non avviati", - "total_guests": "Totale ospiti", - "completed_work_items": "{entity} completati", - "total": "Totale {entity}", + "upgrade_to_plan": "Passa a {plan} per sbloccare {tab}", + "workitem_resolved_vs_pending": "Elementi di lavoro risolti vs in sospeso", "projects_by_status": "Progetti per stato", "active_users": "Utenti attivi", - "intake_trends": "Tendenze di ammissione", - "workitem_resolved_vs_pending": "Elementi di lavoro risolti vs in sospeso", - "upgrade_to_plan": "Passa a {plan} per sbloccare {tab}" + "intake_trends": "Tendenze di ammissione" }, "workspace_projects": { "label": "{count, plural, one {Progetto} other {Progetti}}", @@ -318,6 +312,10 @@ "archived": { "title": "Nessuna pagina archiviata ancora", "description": "Archivia le pagine che non sono nella tua lista di priorità. Accedile qui quando necessario." + }, + "shared": { + "title": "Nessuna pagina condivisa ancora", + "description": "Le pagine che altri hanno condiviso con te appariranno qui." } } }, diff --git a/packages/i18n/src/locales/ja/auth.json b/packages/i18n/src/locales/ja/auth.json index 41fc1423fbb..d3dd8d37a9e 100644 --- a/packages/i18n/src/locales/ja/auth.json +++ b/packages/i18n/src/locales/ja/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "メールアドレス", - "placeholder": "name@company.com", - "errors": { - "required": "メールアドレスは必須です", - "invalid": "メールアドレスが無効です" - } - }, - "password": { - "label": "パスワード", - "set_password": "パスワードを設定", - "placeholder": "パスワードを入力", - "confirm_password": { - "label": "パスワードの確認", - "placeholder": "パスワードを確認" - }, - "current_password": { - "label": "現在のパスワード" - }, - "new_password": { - "label": "新しいパスワード", - "placeholder": "新しいパスワードを入力" - }, - "change_password": { - "label": { - "default": "パスワードを変更", - "submitting": "パスワードを変更中" - } - }, - "errors": { - "match": "パスワードが一致しません", - "empty": "パスワードを入力してください", - "length": "パスワードは8文字以上である必要があります", - "strength": { - "weak": "パスワードが弱すぎます", - "strong": "パスワードは十分な強度です" - } - }, - "submit": "パスワードを設定", - "toast": { - "change_password": { - "success": { - "title": "成功!", - "message": "パスワードが正常に変更されました。" - }, - "error": { - "title": "エラー!", - "message": "問題が発生しました。もう一度お試しください。" - } - } - } - }, - "unique_code": { - "label": "ユニークコード", - "placeholder": "123456", - "paste_code": "メールで送信されたコードを貼り付けてください", - "requesting_new_code": "新しいコードをリクエスト中", - "sending_code": "コードを送信中" - }, - "already_have_an_account": "すでにアカウントをお持ちですか?", - "login": "ログイン", - "create_account": "アカウントを作成", - "new_to_plane": "Planeは初めてですか?", - "back_to_sign_in": "サインインに戻る", - "resend_in": "{seconds}秒後に再送信", - "sign_in_with_unique_code": "ユニークコードでサインイン", - "forgot_password": "パスワードをお忘れですか?", - "username": { - "label": "ユーザー名", - "placeholder": "ユーザー名を入力してください" - } - }, - "sign_up": { - "header": { - "label": "チームと作業を管理するためのアカウントを作成してください。", - "step": { - "email": { - "header": "サインアップ", - "sub_header": "" - }, - "password": { - "header": "サインアップ", - "sub_header": "メールアドレスとパスワードの組み合わせでサインアップ。" - }, - "unique_code": { - "header": "サインアップ", - "sub_header": "上記のメールアドレスに送信されたユニークコードでサインアップ。" - } - } - }, - "errors": { - "password": { - "strength": "強力なパスワードを設定して続行してください" - } - } - }, - "sign_in": { - "header": { - "label": "チームと作業を管理するためにログインしてください。", - "step": { - "email": { - "header": "ログインまたはサインアップ", - "sub_header": "" - }, - "password": { - "header": "ログインまたはサインアップ", - "sub_header": "メールアドレスとパスワードの組み合わせでログイン。" - }, - "unique_code": { - "header": "ログインまたはサインアップ", - "sub_header": "上記のメールアドレスに送信されたユニークコードでログイン。" - } - } - } - }, - "forgot_password": { - "title": "パスワードをリセット", - "description": "確認済みのユーザーアカウントのメールアドレスを入力してください。パスワードリセットリンクを送信します。", - "email_sent": "リセットリンクをメールアドレスに送信しました", - "send_reset_link": "リセットリンクを送信", - "errors": { - "smtp_not_enabled": "管理者がSMTPを有効にしていないため、パスワードリセットリンクを送信できません" - }, - "toast": { - "success": { - "title": "メール送信完了", - "message": "パスワードをリセットするためのリンクを受信トレイで確認してください。数分以内に表示されない場合は、迷惑メールフォルダを確認してください。" - }, - "error": { - "title": "エラー!", - "message": "問題が発生しました。もう一度お試しください。" - } - } - }, - "reset_password": { - "title": "新しいパスワードを設定", - "description": "強力なパスワードでアカウントを保護" - }, - "set_password": { - "title": "アカウントを保護", - "description": "パスワードを設定して安全にログイン" - }, - "sign_out": { - "toast": { - "error": { - "title": "エラー!", - "message": "サインアウトに失敗しました。もう一度お試しください。" - } - } - }, - "ldap": { - "header": { - "label": "{ldapProviderName}で続行", - "sub_header": "{ldapProviderName}の認証情報を入力してください" - } - } - }, "sso": { "header": "アイデンティティ", "description": "シングルサインオンを含むセキュリティ機能にアクセスするためにドメインを設定します。", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "メールアドレス", + "placeholder": "name@company.com", + "errors": { + "required": "メールアドレスは必須です", + "invalid": "メールアドレスが無効です" + } + }, + "password": { + "label": "パスワード", + "set_password": "パスワードを設定", + "placeholder": "パスワードを入力", + "confirm_password": { + "label": "パスワードの確認", + "placeholder": "パスワードを確認" + }, + "current_password": { + "label": "現在のパスワード" + }, + "new_password": { + "label": "新しいパスワード", + "placeholder": "新しいパスワードを入力" + }, + "change_password": { + "label": { + "default": "パスワードを変更", + "submitting": "パスワードを変更中" + } + }, + "errors": { + "match": "パスワードが一致しません", + "empty": "パスワードを入力してください", + "length": "パスワードは8文字以上である必要があります", + "strength": { + "weak": "パスワードが弱すぎます", + "strong": "パスワードは十分な強度です" + } + }, + "submit": "パスワードを設定", + "toast": { + "change_password": { + "success": { + "title": "成功!", + "message": "パスワードが正常に変更されました。" + }, + "error": { + "title": "エラー!", + "message": "問題が発生しました。もう一度お試しください。" + } + } + } + }, + "unique_code": { + "label": "ユニークコード", + "placeholder": "123456", + "paste_code": "メールで送信されたコードを貼り付けてください", + "requesting_new_code": "新しいコードをリクエスト中", + "sending_code": "コードを送信中" + }, + "already_have_an_account": "すでにアカウントをお持ちですか?", + "login": "ログイン", + "create_account": "アカウントを作成", + "new_to_plane": "Planeは初めてですか?", + "back_to_sign_in": "サインインに戻る", + "resend_in": "{seconds}秒後に再送信", + "sign_in_with_unique_code": "ユニークコードでサインイン", + "forgot_password": "パスワードをお忘れですか?", + "username": { + "label": "ユーザー名", + "placeholder": "ユーザー名を入力してください" + } + }, + "sign_up": { + "header": { + "label": "チームと作業を管理するためのアカウントを作成してください。", + "step": { + "email": { + "header": "サインアップ", + "sub_header": "" + }, + "password": { + "header": "サインアップ", + "sub_header": "メールアドレスとパスワードの組み合わせでサインアップ。" + }, + "unique_code": { + "header": "サインアップ", + "sub_header": "上記のメールアドレスに送信されたユニークコードでサインアップ。" + } + } + }, + "errors": { + "password": { + "strength": "強力なパスワードを設定して続行してください" + } + } + }, + "sign_in": { + "header": { + "label": "チームと作業を管理するためにログインしてください。", + "step": { + "email": { + "header": "ログインまたはサインアップ", + "sub_header": "" + }, + "password": { + "header": "ログインまたはサインアップ", + "sub_header": "メールアドレスとパスワードの組み合わせでログイン。" + }, + "unique_code": { + "header": "ログインまたはサインアップ", + "sub_header": "上記のメールアドレスに送信されたユニークコードでログイン。" + } + } + } + }, + "forgot_password": { + "title": "パスワードをリセット", + "description": "確認済みのユーザーアカウントのメールアドレスを入力してください。パスワードリセットリンクを送信します。", + "email_sent": "リセットリンクをメールアドレスに送信しました", + "send_reset_link": "リセットリンクを送信", + "errors": { + "smtp_not_enabled": "管理者がSMTPを有効にしていないため、パスワードリセットリンクを送信できません" + }, + "toast": { + "success": { + "title": "メール送信完了", + "message": "パスワードをリセットするためのリンクを受信トレイで確認してください。数分以内に表示されない場合は、迷惑メールフォルダを確認してください。" + }, + "error": { + "title": "エラー!", + "message": "問題が発生しました。もう一度お試しください。" + } + } + }, + "reset_password": { + "title": "新しいパスワードを設定", + "description": "強力なパスワードでアカウントを保護" + }, + "set_password": { + "title": "アカウントを保護", + "description": "パスワードを設定して安全にログイン" + }, + "sign_out": { + "toast": { + "error": { + "title": "エラー!", + "message": "サインアウトに失敗しました。もう一度お試しください。" + } + } + }, + "ldap": { + "header": { + "label": "{ldapProviderName}で続行", + "sub_header": "{ldapProviderName}の認証情報を入力してください" + } + } } } diff --git a/packages/i18n/src/locales/ja/automation.json b/packages/i18n/src/locales/ja/automation.json index 16fa4392a07..052a5842da0 100644 --- a/packages/i18n/src/locales/ja/automation.json +++ b/packages/i18n/src/locales/ja/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "戻る", "next": "アクションを追加" + }, + "warning": { + "disabled_trigger_switching": "作成後はトリガータイプを変更できません" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "オプションを選択", "handler_name": { "add_comment": "コメントを追加", - "change_property": "プロパティを変更" + "change_property": "プロパティを変更", + "run_script": "スクリプトを実行" }, "configuration": { "label": "設定", @@ -89,6 +93,9 @@ "comment_block": { "title": "コメントを追加" }, + "run_script_block": { + "title": "スクリプトを実行" + }, "change_property_block": { "title": "プロパティを変更" }, @@ -115,6 +122,8 @@ }, "table": { "title": "自動化タイトル", + "scope": "スコープ", + "projects": "プロジェクト", "last_run_on": "最終実行日", "created_on": "作成日", "last_updated_on": "最終更新日", @@ -230,6 +239,35 @@ "description": "自動化は、プロジェクト内のタスクを自動化する方法です。", "sub_description": "自動化を使用すると、管理時間の80%を節約できます。" } + }, + "global_automations": { + "project_select": { + "label": "この自動化を実行するプロジェクトを選択", + "all_projects": { + "label": "すべてのプロジェクト", + "description": "自動化はワークスペース内のすべてのプロジェクトで実行されます。" + }, + "select_projects": { + "label": "プロジェクトを選択", + "description": "自動化はワークスペース内の選択したプロジェクトで実行されます。", + "placeholder": "プロジェクトを選択" + } + }, + "settings": { + "sidebar_label": "自動化", + "title": "自動化", + "description": "グローバル自動化でワークスペース全体のプロセスを標準化します。" + }, + "table": { + "scope": { + "global": "グローバル", + "project": { + "label": "プロジェクト", + "multiple": "複数", + "all": "すべて" + } + } + } } } } diff --git a/packages/i18n/src/locales/ja/common.json b/packages/i18n/src/locales/ja/common.json index 1e138bcd145..4899411b615 100644 --- a/packages/i18n/src/locales/ja/common.json +++ b/packages/i18n/src/locales/ja/common.json @@ -17,6 +17,7 @@ "no": "いいえ", "ok": "OK", "name": "名前", + "unknown_user": "不明なユーザー", "description": "説明", "search": "検索", "add_member": "メンバーを追加", @@ -56,7 +57,8 @@ "no_worklogs": "作業ログはまだありません", "no_history": "履歴はまだありません" }, - "appearance": "外観", + "preferences": "環境設定", + "language_and_time": "言語と時刻", "notifications": "通知", "workspaces": "ワークスペース", "create_workspace": "ワークスペースを作成", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "問題が発生しました。もう一度お試しください。", "load_more": "もっと読み込む", "select_or_customize_your_interface_color_scheme": "インターフェースのカラースキームを選択またはカスタマイズします。", + "timezone_setting": "現在のタイムゾーン設定。", + "language_setting": "ユーザーインターフェースで使用する言語を選択します。", + "settings_moved_to_preferences": "タイムゾーンと言語の設定は環境設定に移動しました。", + "go_to_preferences": "環境設定へ移動", "select_the_cursor_motion_style_that_feels_right_for_you": "自分に合ったカーソル移動スタイルを選択してください。", "theme": "テーマ", "smooth_cursor": "スムーズカーソル", @@ -163,6 +169,7 @@ "project_created_successfully": "プロジェクトが正常に作成されました", "project_created_successfully_description": "プロジェクトが正常に作成されました。作業項目を追加できるようになりました。", "project_name_already_taken": "プロジェクト名は既に使用されています。", + "project_name_cannot_contain_special_characters": "プロジェクト名に特殊文字を含めることはできません。", "project_identifier_already_taken": "プロジェクト識別子は既に使用されています。", "project_cover_image_alt": "プロジェクトのカバー画像", "name_is_required": "名前は必須です", @@ -207,6 +214,7 @@ "issues": "作業項目", "cycles": "Cycles", "modules": "Modules", + "pages": "ページ", "intake": "Intake", "renew": "更新", "preview": "プレビュー", @@ -298,6 +306,7 @@ "start_date": "開始日", "end_date": "終了日", "due_date": "期限", + "target_date": "目標日", "estimate": "見積もり", "change_parent_issue": "親作業項目を変更", "remove_parent_issue": "親作業項目を削除", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "新しいパスワードは古いパスワードと異なる必要があります", "edited": "編集済み", "bot": "ボット", + "settings_description": "アカウント、ワークスペース、プロジェクトの環境設定を一か所で管理できます。タブを切り替えて簡単に設定してください。", + "back_to_workspace": "ワークスペースに戻る", "upgrade_request": "ワークスペース管理者にアップグレードを依頼してください。", "copied_to_clipboard": "クリップボードにコピーしました", "copied_to_clipboard_description": "URLがクリップボードに正常にコピーされました", @@ -422,6 +433,9 @@ "modules": "モジュール", "labels": "ラベル", "label": "ラベル", + "admins": "管理者", + "users": "ユーザー", + "guests": "ゲスト", "assignees": "担当者", "assignee": "担当者", "created_by": "作成者", @@ -451,6 +465,8 @@ "work_item": "作業項目", "work_items": "作業項目", "sub_work_item": "サブ作業項目", + "views": "ビュー", + "pages": "ページ", "add": "追加", "warning": "警告", "updating": "更新中", @@ -496,7 +512,7 @@ "workspace_level": "ワークスペースレベル", "order_by": { "label": "並び順", - "manual": "手動", + "manual": "手動 - ランク", "last_created": "最終作成日", "last_updated": "最終更新日", "start_date": "開始日", @@ -532,6 +548,7 @@ "continue": "続ける", "resend": "再送信", "relations": "関連", + "dependencies": "依存関係", "errors": { "default": { "title": "エラー!", @@ -563,11 +580,27 @@ "quarter": "四半期", "press_for_commands": "コマンドは「/」を押してください", "click_to_add_description": "クリックして説明を追加", + "on_track": "順調", + "off_track": "遅れ", + "at_risk": "リスクあり", + "timeline": "タイムライン", + "completion": "完了", + "upcoming": "今後の予定", + "completed": "完了", + "in_progress": "進行中", + "planned": "計画済み", + "paused": "一時停止", "search": { "label": "検索", "placeholder": "検索するキーワードを入力", "no_matches_found": "一致する結果が見つかりません", - "no_matching_results": "一致する結果がありません" + "no_matching_results": "一致する結果がありません", + "min_chars": "検索するには{count}文字以上入力してください", + "error": "検索結果の取得中にエラーが発生しました", + "no_results": { + "title": "一致する結果がありません", + "description": "検索条件を削除してすべての結果を表示" + } }, "actions": { "edit": "編集", @@ -576,6 +609,7 @@ "copy_link": "リンクをコピー", "copy_branch_name": "ブランチ名をコピー", "archive": "アーカイブ", + "restore": "復元", "delete": "削除", "remove_relation": "関連を削除", "subscribe": "購読", @@ -583,7 +617,9 @@ "clear_sorting": "並び替えをクリア", "show_weekends": "週末を表示", "enable": "有効化", - "disable": "無効化" + "disable": "無効化", + "copy_markdown": "マークダウンをコピー", + "reply": "返信" }, "name": "名前", "discard": "破棄", @@ -596,6 +632,7 @@ "disabled": "無効", "mandate": "必須", "mandatory": "必須", + "global": "グローバル", "yes": "はい", "no": "いいえ", "please_wait": "お待ちください", @@ -605,6 +642,7 @@ "or": "または", "next": "次へ", "back": "戻る", + "retry": "再試行", "cancelling": "キャンセル中", "configuring": "設定中", "clear": "クリア", @@ -659,30 +697,27 @@ "deactivated_user": "無効化されたユーザー", "apply": "適用", "applying": "適用中", - "users": "ユーザー", - "admins": "管理者", - "guests": "ゲスト", - "on_track": "順調", - "off_track": "遅れ", - "at_risk": "リスクあり", - "timeline": "タイムライン", - "completion": "完了", - "upcoming": "今後の予定", - "completed": "完了", - "in_progress": "進行中", - "planned": "計画済み", - "paused": "一時停止", + "overview": "概要", "no_of": "{entity} の数", "resolved": "解決済み", + "get_started": "はじめに", "worklogs": "作業ログ", "project_updates": "プロジェクトの更新", - "overview": "概要", "workflows": "ワークフロー", + "templates": "テンプレート", + "business": "ビジネス", "members_and_teamspaces": "メンバーとチームスペース", + "recurring_work_items": "繰り返し作業項目", + "milestones": "マイルストーン", "open_in_full_screen": "{page}をフルスクリーンで開く", "details": "詳細", "project_structure": "プロジェクト構造", - "custom_properties": "カスタムプロパティ" + "custom_properties": "カスタムプロパティ", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "エックス アクシス", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Planeが起動しませんでした。これは1つまたは複数のPlaneサービスの起動に失敗したことが原因である可能性があります。", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "setup.shとDockerログからView Logsを選択して確認してください。" }, + "customize_navigation": "ナビゲーションをカスタマイズ", + "personal": "個人", + "accordion_navigation_control": "アコーディオン形式のサイドバーナビゲーション", + "horizontal_navigation_bar": "タブ形式のナビゲーション", + "show_limited_projects_on_sidebar": "サイドバーに表示するプロジェクトを制限", + "enter_number_of_projects": "プロジェクト数を入力", + "pin": "ピン留め", + "unpin": "ピン留めを解除", "workspace_dashboards": "ダッシュボード", "pi_chat": "AIチャット", "in_app": "アプリ内", "forms": "フォーム", - "choose_workspace_for_integration": "このアプリケーションに接続するワークスペースを選択してください", - "integrations_description": "Planeのアプリケーションは、管理者であるワークスペースに接続する必要があります。", - "create_a_new_workspace": "新しいワークスペースを作成", - "learn_more_about_workspaces": "ワークスペースについて詳しくはこちら", - "no_workspaces_to_connect": "接続するワークスペースがありません", - "no_workspaces_to_connect_description": "接続するワークスペースを作成する必要があります", + "milestones": "マイルストーン", + "milestones_description": "マイルストーンは、共通の完了日に向けて作業項目を揃えるためのレイヤーを提供します。", "file_upload": { "upload_text": "クリックしてファイルをアップロード", "drag_drop_text": "ドラッグ&ドロップ", "processing": "処理中", - "invalid": "無効なファイル形式", + "invalid_file_type": "無効なファイル形式", "missing_fields": "必須フィールドが不足しています", "success": "{fileName}がアップロードされました!" }, - "project_name_cannot_contain_special_characters": "プロジェクト名に特殊文字を含めることはできません。", "date": "日付", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/ja/editor.json b/packages/i18n/src/locales/ja/editor.json index 3035cf6d0d5..222916565c7 100644 --- a/packages/i18n/src/locales/ja/editor.json +++ b/packages/i18n/src/locales/ja/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "有効なURLを入力してください。" } + }, + "ai_block": { + "content": { + "placeholder": "このブロックの内容を説明してください", + "generated_here": "ここにAIコンテンツが生成されます" + }, + "block_types": { + "placeholder": "ブロックタイプを選択", + "summarize_page": "ページを要約", + "custom_prompt": "カスタムプロンプト" + }, + "actions": { + "discard": "破棄", + "generate": "生成", + "generating": "生成中", + "rewriting": "書き換え中", + "rewrite": "書き換え", + "use_this": "これを使用", + "refine": "改良" + } } } diff --git a/packages/i18n/src/locales/ja/empty-state.json b/packages/i18n/src/locales/ja/empty-state.json index aaf0b78639a..eb3b067ffe8 100644 --- a/packages/i18n/src/locales/ja/empty-state.json +++ b/packages/i18n/src/locales/ja/empty-state.json @@ -249,10 +249,22 @@ "title": "すべてのメンバーのタイムシートを追跡", "description": "作業項目に時間を記録して、プロジェクト全体の任意のチームメンバーの詳細なタイムシートを表示します。" }, + "group_syncing": { + "title": "グループマッピングはまだありません" + }, "template_setting": { "title": "まだテンプレートはありません", "description": "プロジェクト、作業項目、ページのテンプレートを作成してセットアップ時間を短縮し、数秒で新しい作業を開始します。", "cta_primary": "テンプレートを作成" + }, + "workflows": { + "title": "ワークフローはまだありません", + "description": "作業項目の進捗を管理するためのワークフローを作成します。", + "cta_primary": "新しいワークフローを追加", + "states": { + "title": "ステータスを追加", + "description": "作業項目が進行するステータスを選択します。" + } } } } diff --git a/packages/i18n/src/locales/ja/integration.json b/packages/i18n/src/locales/ja/integration.json index bbb9fe2b148..e238e332507 100644 --- a/packages/i18n/src/locales/ja/integration.json +++ b/packages/i18n/src/locales/ja/integration.json @@ -194,6 +194,10 @@ "server_error_states": "状態の読み込み中にサーバーエラーが発生しました" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Bitbucket Data CenterのリポジトリをPlaneと連携・同期します。" + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "外部IdPトークンをAPI アクセス用に検証します。", @@ -302,10 +306,10 @@ "generic_error": "リクエストの処理中に予期せぬエラーが発生しました", "connection_not_found": "要求された接続が見つかりませんでした", "multiple_connections_found": "1つの接続が期待される場合に複数の接続が見つかりました", + "cannot_create_multiple_connections": "あなたはすでに組織をワークスペースと接続しています。新しい接続を作成する前に、既存の接続を切断してください。", "installation_not_found": "要求されたインストールが見つかりませんでした", "user_not_found": "要求されたユーザーが見つかりませんでした", "error_fetching_token": "認証トークンの取得に失敗しました", - "cannot_create_multiple_connections": "あなたはすでに組織をワークスペースと接続しています。新しい接続を作成する前に、既存の接続を切断してください。", "invalid_app_credentials": "提供されたアプリの資格情報が無効です", "invalid_app_installation_id": "アプリのインストールに失敗しました" }, @@ -316,6 +320,7 @@ "pulling": "取得中", "timed_out": "タイムアウト", "pulled": "取得済み", + "progressing": "進行中", "transforming": "変換中", "transformed": "変換済み", "pushing": "送信中", diff --git a/packages/i18n/src/locales/ja/module.json b/packages/i18n/src/locales/ja/module.json index 986f07334eb..0bac60b408c 100644 --- a/packages/i18n/src/locales/ja/module.json +++ b/packages/i18n/src/locales/ja/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {モジュール} other {モジュール}}", - "no_module": "モジュールなし" + "no_module": "モジュールなし", + "select": "モジュールを追加" } } diff --git a/packages/i18n/src/locales/ja/navigation.json b/packages/i18n/src/locales/ja/navigation.json index 9317eabd9e7..207ec747e8b 100644 --- a/packages/i18n/src/locales/ja/navigation.json +++ b/packages/i18n/src/locales/ja/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "結果が見つかりません" + } + } + }, "sidebar": { + "stickies": "付箋", + "your_work": "あなたの作業", "projects": "プロジェクト", "pages": "ページ", "new_work_item": "新規作業項目", "home": "ホーム", - "your_work": "あなたの作業", "inbox": "受信トレイ", "workspace": "ワークスペース", "views": "ビュー", @@ -21,14 +29,6 @@ "epics": "エピック", "upgrade_plan": "プランをアップグレード", "plane_pro": "Plane Pro", - "business": "ビジネス", - "recurring_work_items": "繰り返し作業項目" - }, - "command_k": { - "empty_state": { - "search": { - "title": "結果が見つかりません" - } - } + "business": "ビジネス" } } diff --git a/packages/i18n/src/locales/ja/page.json b/packages/i18n/src/locales/ja/page.json index 06bb671371e..10b45a38f06 100644 --- a/packages/i18n/src/locales/ja/page.json +++ b/packages/i18n/src/locales/ja/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "ページを接続", - "show_wiki_pages": "Wikiページを表示", - "link_pages_to": "ページを接続", - "linked_pages": "リンクされたページ", - "no_description": "このページは空です。何かを書いて、ここにこのプレースホルダーとして表示してください。", - "toasts": { - "link": { - "success": { - "title": "ページが更新されました", - "message": "ページが正常に更新されました" - }, - "error": { - "title": "ページが更新されませんでした", - "message": "ページを更新できませんでした" - } - }, - "remove": { - "success": { - "title": "ページが削除されました", - "message": "ページが正常に削除されました" - }, - "error": { - "title": "ページが削除されませんでした", - "message": "ページを削除できませんでした" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "画像がありません", "description": "画像を追加してここで確認してください。" } + }, + "comments": { + "label": "コメント", + "empty_state": { + "title": "コメントがありません", + "description": "コメントを追加してここで確認してください。" + } + } + }, + "toasts": { + "errors": { + "wrong_name": "付箋の名前は100文字を超えることはできません。", + "already_exists": "説明のない付箋がすでに存在します" + }, + "created": { + "title": "付箋を作成しました", + "message": "付箋が正常に作成されました" + }, + "not_created": { + "title": "付箋が作成されませんでした", + "message": "付箋を作成できませんでした" + }, + "updated": { + "title": "付箋を更新しました", + "message": "付箋が正常に更新されました" + }, + "not_updated": { + "title": "付箋が更新されませんでした", + "message": "付箋を更新できませんでした" + }, + "removed": { + "title": "付箋を削除しました", + "message": "付箋が正常に削除されました" + }, + "not_removed": { + "title": "付箋が削除されませんでした", + "message": "付箋を削除できませんでした" } }, "open_button": "ナビゲーションパネルを開く", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "移動", + "loading": "移動中" + }, + "cannot_move_to_teamspace": "プライベートページおよび共有ページはチームスペースに移動できません。", "placeholders": { + "workspace_to_all": "プロジェクトとチームスペースを検索", + "workspace_to_project": "プロジェクトを検索", + "project_to_all": "プロジェクトとチームスペースを検索", + "project_to_project": "プロジェクトを検索", "project_to_all_with_wiki": "Wiki コレクション、プロジェクト、チームスペースを検索", "project_to_project_with_wiki": "Wiki コレクションとプロジェクトを検索" }, "toasts": { + "success": { + "title": "成功!", + "message": "ページを移動しました。" + }, + "error": { + "title": "エラー!", + "message": "ページを移動できませんでした。後でもう一度お試しください。" + }, "collection_error": { "title": "Wiki に移動しました", "message": "ページは Wiki に移動されましたが、選択したコレクションに追加できませんでした。ページは General に残ります。" diff --git a/packages/i18n/src/locales/ja/project-settings.json b/packages/i18n/src/locales/ja/project-settings.json index 99b220063cd..c6e8521a7be 100644 --- a/packages/i18n/src/locales/ja/project-settings.json +++ b/packages/i18n/src/locales/ja/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "メンバー", "project_lead": "プロジェクトリーダー", + "project_lead_description": "プロジェクトのプロジェクトリーダーを選択してください。", "default_assignee": "デフォルトの担当者", + "default_assignee_description": "プロジェクトのデフォルトの担当者を選択してください。", + "project_subscribers": "プロジェクトの購読者", + "project_subscribers_description": "このプロジェクトの通知を受け取るメンバーを選択してください。", "guest_super_permissions": { "title": "ゲストユーザーにすべての作業項目の閲覧権限を付与:", "sub_heading": "これにより、ゲストはプロジェクトのすべての作業項目を閲覧できるようになります。" @@ -30,13 +34,11 @@ "title": "メンバーを招待", "sub_heading": "プロジェクトに参加するメンバーを招待します。", "select_co_worker": "共同作業者を選択" - }, - "project_lead_description": "プロジェクトのプロジェクトリーダーを選択してください。", - "default_assignee_description": "プロジェクトのデフォルトの担当者を選択してください。", - "project_subscribers": "プロジェクトの購読者", - "project_subscribers_description": "このプロジェクトの通知を受け取るメンバーを選択してください。" + } }, "states": { + "heading": "ステータス", + "description": "作業項目の進捗を追跡するためのワークフローのステータスを定義してカスタマイズします。", "describe_this_state_for_your_members": "このステータスについてメンバーに説明してください。", "empty_state": { "title": "{groupKey}グループのステータスがありません", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "ラベル", + "description": "作業項目を分類・整理するためのカスタムラベルを作成します", "label_title": "ラベルタイトル", "label_title_is_required": "ラベルタイトルは必須です", "label_max_char": "ラベル名は255文字を超えることはできません", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "見積もり", + "description": "チームの複雑さと作業負荷を伝えるのに役立ちます。", "label": "見積もり", "title": "プロジェクトの見積もりを有効にする", - "description": "チームの複雑さと作業負荷を伝えるのに役立ちます。", + "enable_description": "チームの複雑さと作業負荷を伝えるのに役立ちます。", "no_estimate": "見積もりなし", "new": "新しい見積もりシステム", "create": { @@ -112,6 +118,16 @@ "title": "見積もりの並べ替えに失敗", "message": "見積もりを並べ替えできませんでした。もう一度お試しください。" } + }, + "switch": { + "success": { + "title": "見積もりシステムが作成されました", + "message": "正常に作成され有効化されました" + }, + "error": { + "title": "エラー", + "message": "問題が発生しました" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "自動化", + "heading": "自動化", + "description": "プロジェクト管理ワークフローを効率化し、手動タスクを削減するために自動化アクションを設定します。", "auto-archive": { "title": "完了した作業項目を自動的にアーカイブ", "description": "Planeは完了またはキャンセルされた作業項目を自動的にアーカイブします。", @@ -194,90 +212,116 @@ "description": "GitHubやその他の統合を設定して、プロジェクトの作業項目を同期します。" } }, - "cycles": { - "auto_schedule": { - "heading": "サイクルの自動スケジュール", - "description": "手動設定なしでサイクルを維持します。", - "tooltip": "選択したスケジュールに基づいて新しいサイクルを自動的に作成します。", - "edit_button": "編集", - "form": { - "cycle_title": { - "label": "サイクルタイトル", - "placeholder": "タイトル", - "tooltip": "タイトルは後続のサイクルに番号が追加されます。例:デザイン - 1/2/3", - "validation": { - "required": "サイクルタイトルは必須です", - "max_length": "タイトルは255文字を超えてはいけません" - } - }, - "cycle_duration": { - "label": "サイクル期間", - "unit": "週", - "validation": { - "required": "サイクル期間は必須です", - "min": "サイクル期間は少なくとも1週間である必要があります", - "max": "サイクル期間は30週を超えてはいけません", - "positive": "サイクル期間は正の値である必要があります" - } - }, - "cooldown_period": { - "label": "クールダウン期間", - "unit": "日", - "tooltip": "次のサイクルが始まる前のサイクル間の休止期間。", - "validation": { - "required": "クールダウン期間は必須です", - "negative": "クールダウン期間は負の値にはできません" - } - }, - "start_date": { - "label": "サイクル開始日", - "validation": { - "required": "開始日は必須です", - "past": "開始日を過去の日付にすることはできません" - } + "workflows": { + "toggle": { + "title": "ワークフローを有効にする", + "description": "作業項目の移動を制御するワークフローを設定します", + "no_states_tooltip": "ワークフローにステータスが追加されていません。", + "no_work_item_types_tooltip": "ワークフローに作業項目タイプが追加されていません。", + "no_states_or_work_item_types_tooltip": "ワークフローにステータスまたは作業項目タイプが追加されていません。", + "toast": { + "loading": { + "enabling": "ワークフローを有効化中", + "disabling": "ワークフローを無効化中" }, - "number_of_cycles": { - "label": "将来のサイクル数", - "validation": { - "required": "サイクル数は必須です", - "min": "少なくとも1つのサイクルが必要です", - "max": "3つを超えるサイクルをスケジュールすることはできません" - } + "success": { + "title": "成功!", + "message": "ワークフローが正常に有効化されました。" }, - "auto_rollover": { - "label": "作業項目の自動繰り越し", - "tooltip": "サイクルが完了した日に、未完了のすべての作業項目を次のサイクルに移動します。" + "error": { + "title": "エラー!", + "message": "ワークフローの有効化に失敗しました。もう一度お試しください。" + } + } + }, + "heading": "ワークフロー", + "description": "作業項目のトランジションを自動化し、タスクがプロジェクトのパイプラインを移動する方法を制御するルールを設定します。", + "add_button": "新しいワークフローを追加", + "search": "ワークフローを検索", + "detail": { + "define": "ワークフローを定義", + "add_states": "ステータスを追加", + "unmapped_states": { + "title": "マップされていないステータスを検出しました", + "description": "選択したタイプの一部の作業項目は、このワークフローに存在しないステータスにあります。", + "note": "このワークフローを有効化すると、これらの項目はこのワークフローの初期ステータスに自動的に移動します。", + "label": "不足しているステータス", + "tooltip": "一部の作業項目がこのワークフローにマップされていないステータスにあります。ワークフローを開いて確認してください。" + } + }, + "select_states": { + "empty_state": { + "title": "すべてのステータスが使用中です", + "description": "このプロジェクトに定義されたすべてのステータスは、現在のワークフローにすでに含まれています。" + } + }, + "default_footer": { + "fallback_message": "このワークフローは、ワークフローに割り当てられていない作業項目タイプに適用されます。" + }, + "create": { + "heading": "新しいワークフローを作成", + "name": { + "placeholder": "一意の名前を追加", + "validation": { + "max_length": "名前は255文字未満である必要があります", + "required": "名前は必須です", + "invalid": "名前には文字、数字、スペース、ハイフン、アポストロフィのみ使用できます" } }, - "toast": { - "toggle": { - "loading_enable": "サイクルの自動スケジュールを有効化中", - "loading_disable": "サイクルの自動スケジュールを無効化中", - "success": { - "title": "成功!", - "message": "サイクルの自動スケジュールが正常に切り替えられました。" - }, - "error": { - "title": "エラー!", - "message": "サイクルの自動スケジュールの切り替えに失敗しました。" - } - }, - "save": { - "loading": "サイクルの自動スケジュール設定を保存中", - "success": { - "title": "成功!", - "message_create": "サイクルの自動スケジュール設定が正常に保存されました。", - "message_update": "サイクルの自動スケジュール設定が正常に更新されました。" - }, - "error": { - "title": "エラー!", - "message_create": "サイクルの自動スケジュール設定の保存に失敗しました。", - "message_update": "サイクルの自動スケジュール設定の更新に失敗しました。" - } + "description": { + "placeholder": "短い説明を追加", + "validation": { + "invalid": "説明には文字、数字、スペース、ハイフン、アポストロフィのみ使用できます" } + }, + "work_item_type": { + "label": "作業項目タイプ" + }, + "success": { + "title": "成功!", + "message": "ワークフローを正常に作成しました。" + }, + "error": { + "title": "エラー!", + "message": "ワークフローの作成に失敗しました。もう一度お試しください。" + } + }, + "update": { + "success": { + "title": "成功!", + "message": "ワークフローを正常に更新しました。" + }, + "error": { + "title": "エラー!", + "message": "ワークフローの更新に失敗しました。もう一度お試しください。" + } + }, + "delete": { + "loading": "ワークフローを削除中", + "success": { + "title": "成功!", + "message": "ワークフローを正常に削除しました。" + }, + "error": { + "title": "エラー!", + "message": "ワークフローの削除に失敗しました。もう一度お試しください。" + } + }, + "add_states": { + "success": { + "title": "成功!", + "message": "ステータスを正常に追加しました。" + }, + "error": { + "title": "エラー!", + "message": "ステータスの追加に失敗しました。もう一度お試しください。" } } }, + "work_item_types": { + "heading": "作業項目タイプ", + "description": "独自のプロパティを持つさまざまな種類の作業項目を作成・カスタマイズします" + }, "features": { "cycles": { "title": "サイクル", @@ -385,6 +429,98 @@ "success": "プロジェクト機能が正常に更新されました。", "error": "プロジェクト機能の更新中に問題が発生しました。もう一度お試しください。" } + }, + "project_updates": { + "heading": "プロジェクトの更新", + "description": "このプロジェクトの統合された追跡と進捗監視" + }, + "templates": { + "heading": "テンプレート", + "description": "テンプレートを使用すると、プロジェクト、作業項目、ページの作成にかかる時間を80%短縮できます。" + }, + "cycles": { + "auto_schedule": { + "heading": "サイクルの自動スケジュール", + "description": "手動設定なしでサイクルを維持します。", + "tooltip": "選択したスケジュールに基づいて新しいサイクルを自動的に作成します。", + "edit_button": "編集", + "form": { + "cycle_title": { + "label": "サイクルタイトル", + "placeholder": "タイトル", + "tooltip": "タイトルは後続のサイクルに番号が追加されます。例:デザイン - 1/2/3", + "validation": { + "required": "サイクルタイトルは必須です", + "max_length": "タイトルは255文字を超えてはいけません" + } + }, + "cycle_duration": { + "label": "サイクル期間", + "unit": "週", + "validation": { + "required": "サイクル期間は必須です", + "min": "サイクル期間は少なくとも1週間である必要があります", + "max": "サイクル期間は30週を超えてはいけません", + "positive": "サイクル期間は正の値である必要があります" + } + }, + "cooldown_period": { + "label": "クールダウン期間", + "unit": "日", + "tooltip": "次のサイクルが始まる前のサイクル間の休止期間。", + "validation": { + "required": "クールダウン期間は必須です", + "negative": "クールダウン期間は負の値にはできません" + } + }, + "start_date": { + "label": "サイクル開始日", + "validation": { + "required": "開始日は必須です", + "past": "開始日を過去の日付にすることはできません" + } + }, + "number_of_cycles": { + "label": "将来のサイクル数", + "validation": { + "required": "サイクル数は必須です", + "min": "少なくとも1つのサイクルが必要です", + "max": "3つを超えるサイクルをスケジュールすることはできません" + } + }, + "auto_rollover": { + "label": "作業項目の自動繰り越し", + "tooltip": "サイクルが完了した日に、未完了のすべての作業項目を次のサイクルに移動します。" + } + }, + "toast": { + "toggle": { + "loading_enable": "サイクルの自動スケジュールを有効化中", + "loading_disable": "サイクルの自動スケジュールを無効化中", + "success": { + "title": "成功!", + "message": "サイクルの自動スケジュールが正常に切り替えられました。" + }, + "error": { + "title": "エラー!", + "message": "サイクルの自動スケジュールの切り替えに失敗しました。" + } + }, + "save": { + "loading": "サイクルの自動スケジュール設定を保存中", + "success": { + "title": "成功!", + "message_create": "サイクルの自動スケジュール設定が正常に保存されました。", + "message_update": "サイクルの自動スケジュール設定が正常に更新されました。" + }, + "error": { + "title": "エラー!", + "message_create": "サイクルの自動スケジュール設定の保存に失敗しました。", + "message_update": "サイクルの自動スケジュール設定の更新に失敗しました。" + } + } + } + } } } } diff --git a/packages/i18n/src/locales/ja/project.json b/packages/i18n/src/locales/ja/project.json index 05b1b496c4a..16b3b4a6177 100644 --- a/packages/i18n/src/locales/ja/project.json +++ b/packages/i18n/src/locales/ja/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "プロジェクトのフィルター付きビューを保存します。必要な数だけ作成できます", + "description": "ビューは、頻繁に使用するフィルターや簡単にアクセスしたいフィルターの集合です。プロジェクト内のすべての同僚が全員のビューを確認でき、自分のニーズに最も合うものを選択できます。", + "primary_button": { + "text": "最初のビューを作成", + "comic": { + "title": "ビューは作業項目のプロパティの上で機能します。", + "description": "ここから、必要に応じて多くのプロパティやフィルターを使用してビューを作成できます。" + } + }, + "filter": { + "title": "一致するビューがありません", + "description": "検索条件に一致するビューがありません。\n 代わりに新しいビューを作成してください。" + } + }, + "no_archived_issues": { + "title": "アーカイブされた作業項目はまだありません", + "description": "手動または自動化により、完了またはキャンセルされた作業項目をアーカイブできます。アーカイブされたものはここで確認できます。", + "primary_button": { + "text": "自動化を設定" + } + }, + "issues_empty_filter": { + "title": "適用したフィルターに一致する作業項目が見つかりません", + "secondary_button": { + "text": "すべてのフィルターをクリア" + } + }, + "public": { + "title": "公開ページがまだありません", + "description": "プロジェクト内の全員と共有されているページをここで確認できます。", + "primary_button": { + "text": "最初のページを作成" + } + }, + "archived": { + "title": "アーカイブされたページがまだありません", + "description": "注目していないページをアーカイブします。必要な時にここでアクセスできます。" + }, + "shared": { + "title": "共有されたページはまだありません", + "description": "他のメンバーがあなたと共有したページがここに表示されます。" + } + }, + "delete_view": { + "title": "このビューを削除してもよろしいですか?", + "content": "確認すると、このビューに選択したすべてのソート、フィルター、表示オプション + レイアウトが復元不可能な形で完全に削除されます。" + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "プロジェクトのフィルター付きビューを保存します。必要な数だけ作成できます", - "description": "ビューは、頻繁に使用するフィルターや簡単にアクセスしたいフィルターの集合です。プロジェクト内のすべての同僚が全員のビューを確認でき、自分のニーズに最も合うものを選択できます。", - "primary_button": { - "text": "最初のビューを作成", - "comic": { - "title": "ビューは作業項目のプロパティの上で機能します。", - "description": "ここから、必要に応じて多くのプロパティやフィルターを使用してビューを作成できます。" - } - } - }, - "filter": { - "title": "一致するビューがありません", - "description": "検索条件に一致するビューがありません。\n代わりに新しいビューを作成してください。" - } - }, - "delete_view": { - "title": "このビューを削除してもよろしいですか?", - "content": "確認すると、このビューに選択したすべてのソート、フィルター、表示オプション + レイアウトが復元不可能な形で完全に削除されます。" - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "手動" } }, + "project_members": { + "full_name": "氏名", + "display_name": "表示名", + "email": "メールアドレス", + "joining_date": "参加日", + "role": "役割" + }, "project": { "members_import": { "title": "CSVからメンバーをインポート", diff --git a/packages/i18n/src/locales/ja/settings.json b/packages/i18n/src/locales/ja/settings.json index b2ebaa25872..23a12ecbb39 100644 --- a/packages/i18n/src/locales/ja/settings.json +++ b/packages/i18n/src/locales/ja/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "環境設定", + "description": "あなたの働き方に合わせてアプリの体験をカスタマイズします" + }, "notifications": { + "heading": "メール通知", + "description": "購読している作業項目の最新情報を受け取ります。通知を受け取るには有効にしてください。", "select_default_view": "デフォルト表示を選択", "compact": "コンパクト", "full": "全画面" + }, + "security": { + "heading": "セキュリティ" + }, + "api_tokens": { + "title": "個人アクセストークン", + "description": "外部システムやアプリケーションとデータを統合するための安全なAPIトークンを生成します。" + }, + "activity": { + "heading": "アクティビティ", + "description": "すべてのプロジェクトと作業項目にわたる最近のアクションと変更を追跡します。" + }, + "connections": { + "title": "接続", + "heading": "接続", + "description": "ワークスペースの接続設定を管理します。" } }, "profile": { @@ -78,8 +100,9 @@ "profile": "プロフィール", "security": "セキュリティ", "activity": "アクティビティ", - "appearance": "外観", + "preferences": "環境設定", "notifications": "通知", + "api-tokens": "個人アクセストークン", "connections": "接続" }, "tabs": { diff --git a/packages/i18n/src/locales/ja/template.json b/packages/i18n/src/locales/ja/template.json index e4cacfe9e74..5f8b66d9a52 100644 --- a/packages/i18n/src/locales/ja/template.json +++ b/packages/i18n/src/locales/ja/template.json @@ -3,6 +3,9 @@ "settings": { "title": "テンプレート", "description": "テンプレートを使用すると、プロジェクト、作業項目、ページの作成に費やす時間を80%節約できます。", + "new_project_template": "新しいプロジェクトテンプレート", + "new_work_item_template": "新しい作業項目テンプレート", + "new_page_template": "新しいページテンプレート", "options": { "project": { "label": "プロジェクトテンプレート" @@ -157,6 +160,14 @@ "required": "少なくとも1つのキーワードが必要です" } }, + "website": { + "label": "WebサイトのURL", + "placeholder": "https://plane.so", + "validation": { + "invalid": "無効なURL", + "maxLength": "URLは800文字未満にしてください" + } + }, "company_name": { "label": "会社名", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "無効なメールアドレス", - "required": "サポートメールアドレスは必須です", "maxLength": "サポートメールアドレスは255文字未満にしてください" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " まだラベルがありません。プロジェクト内の作業項目を整理してフィルタリングするためのラベルを作成してください。" }, + "no_modules": { + "description": "まだモジュールがありません。専任のリーダーと担当者を持つサブプロジェクトに作業を整理します。" + }, "no_work_items": { "description": "まだ作業項目がありません。1つ追加して、より良い構造にしてください。" }, diff --git a/packages/i18n/src/locales/ja/tour.json b/packages/i18n/src/locales/ja/tour.json index fd96b9a572a..e15707eac15 100644 --- a/packages/i18n/src/locales/ja/tour.json +++ b/packages/i18n/src/locales/ja/tour.json @@ -110,6 +110,12 @@ "description": "作業項目をスヌーズして後で確認できます。開いているリクエストリストの一番下に移動します。" } }, + "mcp_connectors": { + "step_zero": { + "title": "タブ切り替えをやめて、あなたの世界をつなげましょう。", + "description": "GitHubやSlackをリンクして、Plane AIで直接PRを追跡したりチャットを要約したりできます。" + } + }, "navigation": { "modal": { "title": "ナビゲーション、再構築", diff --git a/packages/i18n/src/locales/ja/update.json b/packages/i18n/src/locales/ja/update.json index 2f86d1df6c6..d595c1d9beb 100644 --- a/packages/i18n/src/locales/ja/update.json +++ b/packages/i18n/src/locales/ja/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "進捗", + "since_last_update": "最後の更新以来", + "comments": "{count, plural, one{# コメント} other{# コメント}}" + }, "add_update": "更新を追加", "add_update_placeholder": "ここに更新を入力してください", "empty": { "title": "まだ更新がありません", "description": "ここで更新を確認できます。" }, - "delete": { - "title": "更新を削除", - "confirmation": "この更新を削除してもよろしいですか?この操作は元に戻すことができません。", - "success": { - "title": "更新が削除されました", - "message": "更新が正常に削除されました。" - }, - "error": { - "title": "更新が削除されませんでした", - "message": "更新を削除できませんでした。" - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "進捗", - "since_last_update": "最後の更新以来", - "comments": "{count, plural, one{# コメント} other{# コメント}}" - }, "create": { "success": { "title": "更新が作成されました", @@ -55,6 +43,18 @@ "message": "更新を作成できませんでした。" } }, + "delete": { + "title": "更新を削除", + "confirmation": "この更新を削除してもよろしいですか?この操作は元に戻すことができません。", + "success": { + "title": "更新が削除されました", + "message": "更新が正常に削除されました。" + }, + "error": { + "title": "更新が削除されませんでした", + "message": "更新を削除できませんでした。" + } + }, "update": { "success": { "title": "更新が更新されました", diff --git a/packages/i18n/src/locales/ja/wiki.json b/packages/i18n/src/locales/ja/wiki.json index d252426b1b5..7b656da13c4 100644 --- a/packages/i18n/src/locales/ja/wiki.json +++ b/packages/i18n/src/locales/ja/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "ページを作成するか、コレクションに追加できませんでした。もう一度お試しください。", "collection_link_copied": "コレクションリンクをクリップボードにコピーしました。" } + }, + "wiki": { + "upgrade_flow": { + "title": "アップグレードしてWikiを利用", + "description": "Plane Proで、公開ページ、バージョン履歴、共有ページ、リアルタイム共同編集、Wiki・社内ドキュメント・ナレッジベース向けのワークスペースページを利用できます。", + "upgrade_button": { + "text": "アップグレード" + }, + "learn_more_button": { + "text": "詳細を見る" + }, + "download_button": { + "text": "データをダウンロード", + "loading": "ダウンロード中" + }, + "tabs": { + "nested_pages": "ネストされたページ", + "add_embeds": "埋め込みを追加", + "publish_pages": "ページを公開", + "comments": "コメント" + } + }, + "nested_pages_download_banner": { + "title": "ネストされたページには有料プランが必要です。アップグレードしてご利用ください。" + } } } diff --git a/packages/i18n/src/locales/ja/work-item-type.json b/packages/i18n/src/locales/ja/work-item-type.json index 260d6d52c2a..c06888852d5 100644 --- a/packages/i18n/src/locales/ja/work-item-type.json +++ b/packages/i18n/src/locales/ja/work-item-type.json @@ -3,11 +3,25 @@ "label": "作業項目タイプ", "label_lowercase": "作業項目タイプ", "settings": { - "title": "作業項目タイプ", + "description": "チームのニーズに合わせて独自のプロパティをカスタマイズして追加できます。", + "cant_delete_default_message": "この作業項目タイプは削除できません。このプロジェクトのデフォルトの作業項目タイプとして設定されているためです。", + "set_as_default": "デフォルトに設定", + "cant_set_default_inactive_message": "デフォルトに設定する前にこのタイプを有効にしてください", + "set_default_confirmation": { + "title": "デフォルトの作業項目タイプに設定", + "description": "{name}をデフォルトに設定すると、このワークスペース内のすべてのプロジェクトにインポートされます。すべての新しい作業項目はデフォルトでこのタイプを使用します。", + "confirm_button": "デフォルトに設定" + }, "properties": { "title": "カスタム作業項目プロパティ", + "description": "プロパティを作成・カスタマイズします。", "tooltip": "各作業項目タイプには、タイトル、説明、担当者、状態、優先度、開始日、期限日、モジュール、サイクルなどのデフォルトのプロパティセットが付属しています。チームのニーズに合わせて独自のプロパティをカスタマイズして追加することもできます。", "add_button": "新しいプロパティを追加", + "project": { + "add_button": { + "import_from_workspace": "ワークスペースからインポート" + } + }, "dropdown": { "label": "プロパティタイプ", "placeholder": "タイプを選択" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "新しいカスタムプロパティを作成", + "update": "カスタムプロパティを更新" + }, "form": { "display_name": { "placeholder": "タイトル" @@ -213,9 +231,50 @@ "description": "この作業項目タイプに追加する新しいプロパティがここに表示されます。" } }, + "types": { + "title": "タイプ", + "description": "プロパティを持つ作業項目タイプを作成・カスタマイズします。", + "sort_options": { + "project_count": "所属プロジェクト数" + }, + "filter_options": { + "show_active": "アクティブを表示", + "show_inactive": "非アクティブを表示" + }, + "project": { + "add_button": { + "create_new": "新規作成", + "import_from_workspace": "ワークスペースからインポート" + }, + "banner": { + "with_access": "ワークスペースレベルからタイプをインポートするには、作業項目タイプを有効にしてください", + "without_access": "作業項目タイプは無効になっています。ワークスペース管理者に連絡して、ワークスペース設定で有効にしてもらってください。" + } + } + }, + "linked_properties": { + "title": "カスタムプロパティ", + "add_button": "プロパティを追加", + "modal": { + "title": "プロパティを追加", + "empty": { + "title": "利用可能なプロパティがありません", + "description": "すべてのプロパティはすでにこのタイプにリンクされています。" + } + }, + "unlink_confirmation": { + "title": "プロパティのリンクを解除", + "description": "このプロパティのリンクを解除すると、このタイプを使用するすべての作業項目のすべての値が完全に削除されます。この操作は元に戻せません。", + "input_label": "入力", + "input_label_suffix": "して続行:", + "confirm": "プロパティのリンクを解除", + "loading": "リンク解除中" + } + }, "item_delete_confirmation": { "title": "このタイプを削除", "description": "タイプの削除は既存データの損失につながる可能性があります。", + "can_disable_warning": "代わりにタイプを無効にしますか?", "primary_button": "はい、削除します", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "デフォルトの作業項目タイプは削除できません", "cannot_delete_work_item_type_with_associated_work_items": "関連する作業項目がある作業項目タイプは削除できません" - }, - "can_disable_warning": "代わりにタイプを無効にしますか?" - }, - "cant_delete_default_message": "この作業項目タイプは削除できません。このプロジェクトのデフォルトの作業項目タイプとして設定されているためです。", - "set_as_default": "デフォルトに設定", - "cant_set_default_inactive_message": "デフォルトに設定する前にこのタイプを有効にしてください", - "set_default_confirmation": { - "title": "デフォルトの作業項目タイプに設定", - "description": "{name}をデフォルトに設定すると、このワークスペース内のすべてのプロジェクトにインポートされます。すべての新しい作業項目はデフォルトでこのタイプを使用します。", - "confirm_button": "デフォルトに設定" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "エラー!", "message": { + "default": "作業項目タイプの作成に失敗しました。もう一度お試しください!", "conflict": "{name} タイプはすでに存在します。別の名前を選んでください。" } } @@ -269,6 +320,7 @@ "error": { "title": "エラー!", "message": { + "default": "作業項目タイプの更新に失敗しました。もう一度お試しください!", "conflict": "{name} タイプはすでに存在します。別の名前を選んでください。" } } @@ -383,10 +435,10 @@ } }, "break_hierarchy_modal": { - "title": "検証エラー!", + "title": "保存すると既存のリンクが解除されます", "content": { "intro": "作業アイテムタイプ「{workItemTypeName}」には次が含まれます。", - "parent_items": "{count, plural, other {親の作業アイテム}}", + "parent_items": "{count, plural, other {親リンク # 件が解除されます。}}", "child_items": "{count, plural, other {子の作業アイテム}}", "parent_line_suffix_when_also_children": "、および ", "footer": "この変更により、{workItemTypeName} 作業アイテムタイプの既存の作業アイテムから親子関係が削除されます。" @@ -397,11 +449,11 @@ }, "error_toast": { "title": "エラー!", - "message": "階層を解除できませんでした。もう一度お試しください。" + "message": "リンク解除と保存に失敗しました。もう一度お試しください。" }, "confirm_button": { - "loading": "適用中", - "default": "適用してリンク解除" + "loading": "保存中", + "default": "それでも保存する" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/ja/work-item.json b/packages/i18n/src/locales/ja/work-item.json index 5eb957bbcb0..ca6ed7ffc96 100644 --- a/packages/i18n/src/locales/ja/work-item.json +++ b/packages/i18n/src/locales/ja/work-item.json @@ -20,6 +20,7 @@ "due_date": "期限日を追加", "parent": "親作業項目を追加", "sub_issue": "サブ作業項目を追加", + "dependency": "依存関係を追加", "relation": "関連を追加", "link": "リンクを追加", "existing": "既存の作業項目を追加" @@ -110,6 +111,43 @@ "copy_link": { "success": "コメントリンクがクリップボードにコピーされました", "error": "コメントリンクのコピーに失敗しました。後でもう一度お試しください。" + }, + "replies": { + "create": { + "submit_button": "返信を追加", + "placeholder": "返信を追加" + }, + "toast": { + "fetch": { + "error": { + "message": "返信の取得に失敗しました" + } + }, + "create": { + "success": { + "message": "返信を作成しました" + }, + "error": { + "message": "返信の作成に失敗しました" + } + }, + "update": { + "success": { + "message": "返信を更新しました" + }, + "error": { + "message": "返信の更新に失敗しました" + } + }, + "delete": { + "success": { + "message": "返信を削除しました" + }, + "error": { + "message": "返信の削除に失敗しました" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "すべての選択を解除" }, "open_in_full_screen": "作業項目をフルスクリーンで開く", + "duplicate": { + "modal": { + "title": "別のプロジェクトにコピーを作成", + "description1": "作業項目のコピーを作成します。", + "description2": "複製の際にすべてのプロパティデータが削除されます。", + "placeholder": "プロジェクトを選択" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "作業項目を複製しました" + }, + "error": { + "message": "作業項目の複製に失敗しました" + } + } + }, + "pages": { + "link_pages": "ページを接続", + "show_wiki_pages": "Wikiページを表示", + "link_pages_to": "ページを接続", + "linked_pages": "リンクされたページ", + "no_description": "このページは空です。何かを書いて、ここにこのプレースホルダーとして表示してください。", + "toasts": { + "link": { + "success": { + "title": "ページが更新されました", + "message": "ページが正常に更新されました" + }, + "error": { + "title": "ページが更新されませんでした", + "message": "ページを更新できませんでした" + } + }, + "remove": { + "success": { + "title": "ページが削除されました", + "message": "ページが正常に削除されました" + }, + "error": { + "title": "ページが削除されませんでした", + "message": "ページを削除できませんでした" + } + } + } + }, "vote": { "click_to_upvote": "クリックして賛成票を投じる", "click_to_downvote": "クリックして反対票を投じる", @@ -241,54 +326,6 @@ "title": "作業項目を更新できません", "message": "一部の作業項目では状態の変更が許可されていません。状態の変更が許可されていることを確認してください。" } - }, - "workflows": { - "toggle": { - "title": "ワークフローを有効化", - "description": "ワークアイテムの移動を制御するためのワークフローを設定します", - "no_states_tooltip": "ワークフローに状態が追加されていません。", - "toast": { - "loading": { - "enabling": "ワークフローを有効化しています", - "disabling": "ワークフローを無効化しています" - }, - "success": { - "title": "成功!", - "message": "ワークフローが正常に有効化されました。" - }, - "error": { - "title": "エラー!", - "message": "ワークフローを有効化できませんでした。もう一度お試しください。" - } - } - }, - "heading": "ワークフロー", - "description": "作業項目の遷移を自動化し、タスクがプロジェクトのパイプラインをどのように進むかを制御するルールを設定します。", - "add_button": "新しいワークフローを追加", - "search": "ワークフローを検索", - "detail": { - "define": "ワークフローを定義", - "add_states": "状態を追加", - "unmapped_states": { - "title": "未マッピングの状態が検出されました", - "description": "選択したタイプの一部の作業項目は、現在このワークフローに存在しない状態にあります。", - "note": "このワークフローを有効にすると、それらの項目はこのワークフローの初期状態に自動的に移動します。", - "label": "不足している状態", - "tooltip": "一部の作業項目は、このワークフローにマッピングされていない状態にあります。確認するにはワークフローを開いてください。" - } - }, - "select_states": { - "empty_state": { - "title": "すべての状態が使用中です", - "description": "このプロジェクトで定義されているすべての状態は、すでに現在のワークフローに含まれています。" - } - }, - "default_footer": { - "fallback_message": "このワークフローは、どのワークフローにも割り当てられていない作業項目タイプに適用されます。" - }, - "create": { - "heading": "新しいワークフローを作成" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/ja/workspace-settings.json b/packages/i18n/src/locales/ja/workspace-settings.json index e191dce6c5d..5b397b24618 100644 --- a/packages/i18n/src/locales/ja/workspace-settings.json +++ b/packages/i18n/src/locales/ja/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "請求とプラン", + "description": "プランを選択してサブスクリプションを管理し、ニーズの拡大に応じて簡単にアップグレードできます。", "title": "請求とプラン", "current_plan": "現在のプラン", "free_plan": "現在フリープランを使用中です", "view_plans": "プランを表示" }, "exports": { + "heading": "エクスポート", + "description": "プロジェクトデータをさまざまな形式でエクスポートし、ダウンロードリンク付きのエクスポート履歴にアクセスできます。", "title": "エクスポート", "exporting": "エクスポート中", "previous_exports": "過去のエクスポート", "export_separate_files": "データを個別のファイルにエクスポート", + "exporting_projects": "プロジェクトをエクスポート中", + "format": "形式", "filters_info": "フィルターを適用して、条件に基づいて特定の作業項目をエクスポートします。", "modal": { "title": "エクスポート先", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook", + "description": "プロジェクトイベントが発生したときに、外部サービスへの通知を自動化します。", "title": "Webhook", "add_webhook": "Webhookを追加", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "インテグレーション", + "heading": "インテグレーション", + "description": "人気のツールやサービスと接続して、ワークフローエコシステム全体で作業を同期します。", "page_title": "Plane のデータを利用可能なアプリや自分のアプリで利用できます。", "page_description": "このワークスペースまたはあなたが使用しているすべての連携を表示します。" }, "imports": { - "title": "インポート" + "title": "インポート", + "heading": "インポート", + "description": "既存のプロジェクト管理ツールからデータを接続・インポートして、ワークフロー統合を効率化します。" }, "worklogs": { - "title": "作業ログ" + "title": "作業ログ", + "heading": "作業ログ", + "description": "あらゆるプロジェクトの誰の作業ログ(タイムシート)でもダウンロードできます。" }, "group_syncing": { "title": "グループ同期", @@ -242,7 +256,10 @@ "description": "ドメインを設定し、シングルサインオンを有効にします" }, "project_states": { - "title": "プロジェクトの状態" + "title": "プロジェクトの状態", + "heading": "すべてのプロジェクトの進捗概要を確認します。", + "description": "プロジェクトステータスは、任意のプロジェクトプロパティでプロジェクトの進捗を追跡するためのPlane専用の機能です。", + "go_to_settings": "設定へ移動" }, "projects": { "title": "プロジェクト", @@ -252,6 +269,16 @@ "labels": "プロジェクトラベル" } }, + "templates": { + "title": "テンプレート", + "heading": "テンプレート", + "description": "テンプレートを使用すると、プロジェクト、作業項目、ページの作成にかかる時間を80%短縮できます。" + }, + "relations": { + "title": "関連", + "heading": "関連", + "description": "ワークスペース全体で作業項目を接続する関連タイプを作成・管理します。" + }, "cancel_trial": { "title": "まずトライアルをキャンセルしてください。", "description": "有料プランのトライアルが有効です。続行するには、まずキャンセルしてください。", @@ -263,6 +290,7 @@ "cancel_error_message": "もう一度お試しください。" }, "applications": { + "internal": "内部", "title": "アプリケーション", "applicationId_copied": "アプリケーションIDをクリップボードにコピーしました", "clientId_copied": "クライアントIDをクリップボードにコピーしました", @@ -271,10 +299,61 @@ "your_apps": "あなたのアプリ", "connect": "接続", "connected": "接続済み", + "disconnect": "切断", "install": "インストール", "installed": "インストール済み", "configure": "設定", "app_available": "このアプリをPlaneワークスペースで使用できるようにしました", + "app_credentials_regenrated": { + "title": "アプリの認証情報が正常に再生成されました", + "description": "クライアントシークレットを使用しているすべての場所で置き換えてください。以前のシークレットは無効になっています。" + }, + "app_created": { + "title": "アプリが正常に作成されました", + "description": "認証情報を使用して、Plane ワークスペースにアプリをインストールしてください" + }, + "installed_apps": "インストール済みアプリ", + "all_apps": "すべてのアプリ", + "internal_apps": "内部アプリ", + "app_name_title": "このアプリの名前を入力してください", + "app_description_title": { + "label": "詳細な説明", + "placeholder": "マーケットプレイス用の詳細な説明を書いてください。コマンドを表示するには '/' を押してください。" + }, + "authorization_grant_type": { + "title": "接続タイプ", + "description": "アプリをワークスペースに一度インストールするか、各ユーザーが自分のアカウントを接続できるようにするかを選択してください" + }, + "website": { + "title": "ウェブサイト", + "description": "アプリのウェブサイトへのリンク。", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "アプリ作成者", + "description": "アプリを作成している人物または組織。" + }, + "app_maker_error": "アプリ作成者は必須です", + "setup_url": { + "label": "セットアップURL", + "description": "ユーザーはアプリをインストールすると、このURLにリダイレクトされます。", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL", + "description": "これは、アプリがインストールされているワークスペースからのWebhookイベントや更新を送信する場所です。", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhookシークレット", + "description": "受信するWebhookリクエストを検証するために使用するシークレット。", + "placeholder": "ランダムなシークレットキーを入力" + }, + "redirect_uris": { + "label": "リダイレクトURI(スペース区切り)", + "description": "ユーザーは Plane で認証した後、このパスにリダイレクトされます。", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "使用を開始するにはPlaneワークスペースに接続してください", "client_id_and_secret": "クライアントIDとシークレット", "client_id_and_secret_description": "このシークレットキーをコピーして保存してください。閉じた後はこのキーを見ることができません。", @@ -286,23 +365,13 @@ "slug_already_exists": "スラッグは既に存在します", "failed_to_create_application": "アプリケーションの作成に失敗しました", "upload_logo": "ロゴをアップロード", - "app_name_title": "このアプリの名前を入力してください", "app_name_error": "アプリ名は必須です", "app_short_description_title": "このアプリの短い説明を入力してください", "app_short_description_error": "アプリの短い説明は必須です", - "app_description_title": { - "label": "詳細な説明", - "placeholder": "マーケットプレイス用の詳細な説明を書いてください。コマンドを表示するには '/' を押してください。" - }, - "authorization_grant_type": { - "title": "接続タイプ", - "description": "アプリをワークスペースに一度インストールするか、各ユーザーが自分のアカウントを接続できるようにするかを選択してください" - }, "app_description_error": "アプリの説明は必須です", "app_slug_title": "アプリのスラッグ", "app_slug_error": "アプリのスラッグは必須です", - "app_maker_title": "アプリ作成者", - "app_maker_error": "アプリ作成者は必須です", + "invalid_website_error": "無効なWebサイト", "webhook_url_title": "WebhookのURL", "webhook_url_error": "WebhookのURLは必須です", "invalid_webhook_url_error": "無効なWebhookのURL", @@ -364,7 +433,6 @@ "video_url_title": "ビデオURL", "video_url_error": "ビデオURLは必須です", "invalid_video_url_error": "無効なビデオURL", - "setup_url_title": "セットアップURL", "setup_url_error": "セットアップURLは必須です", "invalid_setup_url_error": "無効なセットアップURL", "configuration_url_title": "設定URL", @@ -380,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "無効なファイルまたはサイズの制限を超えています ({size} MB)", "uploading": "アップロード中...", "upload_and_save": "アップロードして保存", - "app_credentials_regenrated": { - "title": "アプリの認証情報が正常に再生成されました", - "description": "クライアントシークレットを使用しているすべての場所で置き換えてください。以前のシークレットは無効になっています。" - }, - "app_created": { - "title": "アプリが正常に作成されました", - "description": "認証情報を使用して、Plane ワークスペースにアプリをインストールしてください" - }, - "installed_apps": "インストール済みアプリ", - "all_apps": "すべてのアプリ", - "internal_apps": "内部アプリ", - "website": { - "title": "ウェブサイト", - "description": "アプリのウェブサイトへのリンク。", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "アプリ作成者", - "description": "アプリを作成している人物または組織。" - }, - "setup_url": { - "label": "セットアップURL", - "description": "ユーザーはアプリをインストールすると、このURLにリダイレクトされます。", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL", - "description": "これは、アプリがインストールされているワークスペースからのWebhookイベントや更新を送信する場所です。", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "リダイレクトURI(スペース区切り)", - "description": "ユーザーは Plane で認証した後、このパスにリダイレクトされます。", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "インストールリクエスト", "app_consent_no_access_description": "このアプリは、ワークスペースの管理者がインストールした後にのみインストールできます。続行するには、ワークスペースの管理者に連絡してください。", + "app_consent_unapproved_title": "このアプリはまだPlaneによってレビューまたは承認されていません。", + "app_consent_unapproved_description": "ワークスペースに接続する前に、このアプリを信頼できることを確認してください。", + "go_to_app": "アプリへ移動", "enable_app_mentions": "アプリのメンションを有効にする", "enable_app_mentions_tooltip": "これを有効にすると、ユーザーは作業項目をこのアプリにメンションしたり割り当てたりできます。", "scopes": "スコープ", @@ -435,13 +472,18 @@ "profile": "ユーザープロフィール情報へのアクセス", "agents": "エージェントおよびすべてのエージェント関連エンティティへのアクセス", "assets": "アセットおよびすべてのアセット関連エンティティへのアクセス" - }, - "internal": "内部" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "あなたの作業がより知能的で速くなるように、ネイティブに接続されたAIを使用してください。" + }, + "runners": { + "title": "Plane Runner", + "heading": "スクリプト", + "new_script": "新しいスクリプト", + "description": "カスタムスクリプトと自動化ルールでワークフローを自動化します。" } }, "empty_state": { diff --git a/packages/i18n/src/locales/ja/workspace.json b/packages/i18n/src/locales/ja/workspace.json index c502e8aeb38..40b2c751163 100644 --- a/packages/i18n/src/locales/ja/workspace.json +++ b/packages/i18n/src/locales/ja/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "スコープと需要", "custom": "カスタムアナリティクス" }, + "total": "{entity}の合計", + "started_work_items": "開始された{entity}", + "backlog_work_items": "バックログの{entity}", + "un_started_work_items": "未開始の{entity}", + "completed_work_items": "完了した{entity}", + "project_insights": "プロジェクトのインサイト", + "summary_of_projects": "プロジェクトの概要", + "all_projects": "すべてのプロジェクト", + "trend_on_charts": "グラフの傾向", + "active_projects": "アクティブなプロジェクト", + "customized_insights": "カスタマイズされたインサイト", + "created_vs_resolved": "作成 vs 解決", "empty_state": { - "customized_insights": { - "description": "あなたに割り当てられた作業項目は、ステータスごとに分類されてここに表示されます。", - "title": "まだデータがありません" + "project_insights": { + "title": "まだデータがありません", + "description": "あなたに割り当てられた作業項目は、ステータスごとに分類されてここに表示されます。" }, "created_vs_resolved": { - "description": "時間の経過とともに作成および解決された作業項目がここに表示されます。", - "title": "まだデータがありません" + "title": "まだデータがありません", + "description": "時間の経過とともに作成および解決された作業項目がここに表示されます。" }, - "project_insights": { + "customized_insights": { "title": "まだデータがありません", "description": "あなたに割り当てられた作業項目は、ステータスごとに分類されてここに表示されます。" }, @@ -132,29 +144,11 @@ "description": "インテークの傾向分析がここに表示されます。作業項目をインテークに追加して傾向の追跡を開始してください。" } }, - "created_vs_resolved": "作成 vs 解決", - "customized_insights": "カスタマイズされたインサイト", - "backlog_work_items": "バックログの{entity}", - "active_projects": "アクティブなプロジェクト", - "trend_on_charts": "グラフの傾向", - "all_projects": "すべてのプロジェクト", - "summary_of_projects": "プロジェクトの概要", - "project_insights": "プロジェクトのインサイト", - "started_work_items": "開始された{entity}", - "total_work_items": "{entity}の合計", - "total_projects": "プロジェクト合計", - "total_admins": "管理者の合計", - "total_users": "ユーザー総数", - "total_intake": "総収入", - "un_started_work_items": "未開始の{entity}", - "total_guests": "ゲストの合計", - "completed_work_items": "完了した{entity}", - "total": "{entity}の合計", + "upgrade_to_plan": "{tab} をアンロックするには {plan} にアップグレードしてください", + "workitem_resolved_vs_pending": "解決済み vs 保留中の作業項目", "projects_by_status": "ステータス別のプロジェクト", "active_users": "アクティブユーザー", - "intake_trends": "受け入れの傾向", - "workitem_resolved_vs_pending": "解決済み vs 保留中の作業項目", - "upgrade_to_plan": "{tab} をアンロックするには {plan} にアップグレードしてください" + "intake_trends": "受け入れの傾向" }, "workspace_projects": { "label": "{count, plural, one {プロジェクト} other {プロジェクト}}", @@ -162,6 +156,7 @@ "label": "プロジェクトを追加" }, "network": { + "label": "ネットワーク", "private": { "title": "非公開", "description": "招待された人のみアクセス可能" @@ -317,6 +312,10 @@ "archived": { "title": "まだアーカイブされたページがありません", "description": "注目していないページをアーカイブします。必要な時にここでアクセスできます。" + }, + "shared": { + "title": "共有されたページはまだありません", + "description": "他のメンバーがあなたと共有したページがここに表示されます。" } } }, diff --git a/packages/i18n/src/locales/ko/auth.json b/packages/i18n/src/locales/ko/auth.json index e65e249e91d..812d61734ea 100644 --- a/packages/i18n/src/locales/ko/auth.json +++ b/packages/i18n/src/locales/ko/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "이메일", - "placeholder": "name@company.com", - "errors": { - "required": "이메일이 필요합니다", - "invalid": "유효하지 않은 이메일입니다" - } - }, - "password": { - "label": "비밀번호", - "set_password": "비밀번호 설정", - "placeholder": "비밀번호 입력", - "confirm_password": { - "label": "비밀번호 확인", - "placeholder": "비밀번호 확인" - }, - "current_password": { - "label": "현재 비밀번호" - }, - "new_password": { - "label": "새 비밀번호", - "placeholder": "새 비밀번호 입력" - }, - "change_password": { - "label": { - "default": "비밀번호 변경", - "submitting": "비밀번호 변경 중" - } - }, - "errors": { - "match": "비밀번호가 일치하지 않습니다", - "empty": "비밀번호를 입력해주세요", - "length": "비밀번호는 8자 이상이어야 합니다", - "strength": { - "weak": "비밀번호가 약합니다", - "strong": "비밀번호가 강합니다" - } - }, - "submit": "비밀번호 설정", - "toast": { - "change_password": { - "success": { - "title": "성공!", - "message": "비밀번호가 성공적으로 변경되었습니다." - }, - "error": { - "title": "오류!", - "message": "문제가 발생했습니다. 다시 시도해주세요." - } - } - } - }, - "unique_code": { - "label": "고유 코드", - "placeholder": "123456", - "paste_code": "이메일로 전송된 코드를 붙여넣기", - "requesting_new_code": "새 코드 요청 중", - "sending_code": "코드 전송 중" - }, - "already_have_an_account": "이미 계정이 있으신가요?", - "login": "로그인", - "create_account": "계정 만들기", - "new_to_plane": "Plane을 처음 사용하시나요?", - "back_to_sign_in": "로그인으로 돌아가기", - "resend_in": "{seconds}초 후 다시 전송", - "sign_in_with_unique_code": "고유 코드로 로그인", - "forgot_password": "비밀번호를 잊으셨나요?", - "username": { - "label": "사용자 이름", - "placeholder": "사용자 이름을 입력하세요" - } - }, - "sign_up": { - "header": { - "label": "팀과 함께 작업을 관리하려면 계정을 만드세요.", - "step": { - "email": { - "header": "가입", - "sub_header": "" - }, - "password": { - "header": "가입", - "sub_header": "이메일-비밀번호 조합으로 가입하세요." - }, - "unique_code": { - "header": "가입", - "sub_header": "위 이메일 주소로 전송된 고유 코드로 가입하세요." - } - } - }, - "errors": { - "password": { - "strength": "강력한 비밀번호를 설정하여 진행하세요" - } - } - }, - "sign_in": { - "header": { - "label": "팀과 함께 작업을 관리하려면 로그인하세요.", - "step": { - "email": { - "header": "로그인 또는 가입", - "sub_header": "" - }, - "password": { - "header": "로그인 또는 가입", - "sub_header": "이메일-비밀번호 조합을 사용하여 로그인하세요." - }, - "unique_code": { - "header": "로그인 또는 가입", - "sub_header": "위 이메일 주소로 전송된 고유 코드로 로그인하세요." - } - } - } - }, - "forgot_password": { - "title": "비밀번호 재설정", - "description": "사용자 계정의 인증된 이메일 주소를 입력하면 비밀번호 재설정 링크를 보내드립니다.", - "email_sent": "이메일 주소로 재설정 링크를 보냈습니다", - "send_reset_link": "재설정 링크 보내기", - "errors": { - "smtp_not_enabled": "SMTP가 활성화되지 않았습니다. 비밀번호 재설정 링크를 보낼 수 없습니다." - }, - "toast": { - "success": { - "title": "이메일 전송됨", - "message": "비밀번호 재설정 링크를 확인하세요. 몇 분 내에 나타나지 않으면 스팸 폴더를 확인하세요." - }, - "error": { - "title": "오류!", - "message": "문제가 발생했습니다. 다시 시도해주세요." - } - } - }, - "reset_password": { - "title": "새 비밀번호 설정", - "description": "강력한 비밀번호로 계정을 보호하세요" - }, - "set_password": { - "title": "계정 보호", - "description": "비밀번호 설정은 안전한 로그인을 도와줍니다" - }, - "sign_out": { - "toast": { - "error": { - "title": "오류!", - "message": "로그아웃에 실패했습니다. 다시 시도해주세요." - } - } - }, - "ldap": { - "header": { - "label": "{ldapProviderName}로 계속", - "sub_header": "{ldapProviderName} 자격 증명을 입력하세요" - } - } - }, "sso": { "header": "신원", "description": "단일 로그인을 포함한 보안 기능에 액세스하려면 도메인을 구성하세요.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "이메일", + "placeholder": "name@company.com", + "errors": { + "required": "이메일이 필요합니다", + "invalid": "유효하지 않은 이메일입니다" + } + }, + "password": { + "label": "비밀번호", + "set_password": "비밀번호 설정", + "placeholder": "비밀번호 입력", + "confirm_password": { + "label": "비밀번호 확인", + "placeholder": "비밀번호 확인" + }, + "current_password": { + "label": "현재 비밀번호" + }, + "new_password": { + "label": "새 비밀번호", + "placeholder": "새 비밀번호 입력" + }, + "change_password": { + "label": { + "default": "비밀번호 변경", + "submitting": "비밀번호 변경 중" + } + }, + "errors": { + "match": "비밀번호가 일치하지 않습니다", + "empty": "비밀번호를 입력해주세요", + "length": "비밀번호는 8자 이상이어야 합니다", + "strength": { + "weak": "비밀번호가 약합니다", + "strong": "비밀번호가 강합니다" + } + }, + "submit": "비밀번호 설정", + "toast": { + "change_password": { + "success": { + "title": "성공!", + "message": "비밀번호가 성공적으로 변경되었습니다." + }, + "error": { + "title": "오류!", + "message": "문제가 발생했습니다. 다시 시도해주세요." + } + } + } + }, + "unique_code": { + "label": "고유 코드", + "placeholder": "123456", + "paste_code": "이메일로 전송된 코드를 붙여넣기", + "requesting_new_code": "새 코드 요청 중", + "sending_code": "코드 전송 중" + }, + "already_have_an_account": "이미 계정이 있으신가요?", + "login": "로그인", + "create_account": "계정 만들기", + "new_to_plane": "Plane을 처음 사용하시나요?", + "back_to_sign_in": "로그인으로 돌아가기", + "resend_in": "{seconds}초 후 다시 전송", + "sign_in_with_unique_code": "고유 코드로 로그인", + "forgot_password": "비밀번호를 잊으셨나요?", + "username": { + "label": "사용자 이름", + "placeholder": "사용자 이름을 입력하세요" + } + }, + "sign_up": { + "header": { + "label": "팀과 함께 작업을 관리하려면 계정을 만드세요.", + "step": { + "email": { + "header": "가입", + "sub_header": "" + }, + "password": { + "header": "가입", + "sub_header": "이메일-비밀번호 조합으로 가입하세요." + }, + "unique_code": { + "header": "가입", + "sub_header": "위 이메일 주소로 전송된 고유 코드로 가입하세요." + } + } + }, + "errors": { + "password": { + "strength": "강력한 비밀번호를 설정하여 진행하세요" + } + } + }, + "sign_in": { + "header": { + "label": "팀과 함께 작업을 관리하려면 로그인하세요.", + "step": { + "email": { + "header": "로그인 또는 가입", + "sub_header": "" + }, + "password": { + "header": "로그인 또는 가입", + "sub_header": "이메일-비밀번호 조합을 사용하여 로그인하세요." + }, + "unique_code": { + "header": "로그인 또는 가입", + "sub_header": "위 이메일 주소로 전송된 고유 코드로 로그인하세요." + } + } + } + }, + "forgot_password": { + "title": "비밀번호 재설정", + "description": "사용자 계정의 인증된 이메일 주소를 입력하면 비밀번호 재설정 링크를 보내드립니다.", + "email_sent": "이메일 주소로 재설정 링크를 보냈습니다", + "send_reset_link": "재설정 링크 보내기", + "errors": { + "smtp_not_enabled": "SMTP가 활성화되지 않았습니다. 비밀번호 재설정 링크를 보낼 수 없습니다." + }, + "toast": { + "success": { + "title": "이메일 전송됨", + "message": "비밀번호 재설정 링크를 확인하세요. 몇 분 내에 나타나지 않으면 스팸 폴더를 확인하세요." + }, + "error": { + "title": "오류!", + "message": "문제가 발생했습니다. 다시 시도해주세요." + } + } + }, + "reset_password": { + "title": "새 비밀번호 설정", + "description": "강력한 비밀번호로 계정을 보호하세요" + }, + "set_password": { + "title": "계정 보호", + "description": "비밀번호 설정은 안전한 로그인을 도와줍니다" + }, + "sign_out": { + "toast": { + "error": { + "title": "오류!", + "message": "로그아웃에 실패했습니다. 다시 시도해주세요." + } + } + }, + "ldap": { + "header": { + "label": "{ldapProviderName}로 계속", + "sub_header": "{ldapProviderName} 자격 증명을 입력하세요" + } + } } } diff --git a/packages/i18n/src/locales/ko/automation.json b/packages/i18n/src/locales/ko/automation.json index 8b27862a1e4..8d77f70ea7d 100644 --- a/packages/i18n/src/locales/ko/automation.json +++ b/packages/i18n/src/locales/ko/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "뒤로", "next": "액션 추가" + }, + "warning": { + "disabled_trigger_switching": "생성 후에는 트리거 유형을 변경할 수 없습니다" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "옵션 선택", "handler_name": { "add_comment": "댓글 추가", - "change_property": "속성 변경" + "change_property": "속성 변경", + "run_script": "스크립트 실행" }, "configuration": { "label": "설정", @@ -89,6 +93,9 @@ "comment_block": { "title": "댓글 추가" }, + "run_script_block": { + "title": "스크립트 실행" + }, "change_property_block": { "title": "속성 변경" }, @@ -115,6 +122,8 @@ }, "table": { "title": "자동화 제목", + "scope": "범위", + "projects": "프로젝트", "last_run_on": "마지막 실행일", "created_on": "생성일", "last_updated_on": "마지막 업데이트일", @@ -230,6 +239,35 @@ "description": "자동화는 프로젝트의 작업을 자동화하는 방법입니다.", "sub_description": "자동화를 사용하면 관리 시간의 80%를 절약할 수 있습니다." } + }, + "global_automations": { + "project_select": { + "label": "이 자동화를 실행할 프로젝트를 선택하세요", + "all_projects": { + "label": "모든 프로젝트", + "description": "작업 공간의 모든 프로젝트에서 자동화가 실행됩니다." + }, + "select_projects": { + "label": "프로젝트 선택", + "description": "작업 공간에서 선택한 프로젝트에 대해 자동화가 실행됩니다.", + "placeholder": "프로젝트 선택" + } + }, + "settings": { + "sidebar_label": "자동화", + "title": "자동화", + "description": "글로벌 자동화로 작업 공간 전체의 프로세스를 표준화하세요." + }, + "table": { + "scope": { + "global": "글로벌", + "project": { + "label": "프로젝트", + "multiple": "여러 개", + "all": "전체" + } + } + } } } } diff --git a/packages/i18n/src/locales/ko/common.json b/packages/i18n/src/locales/ko/common.json index 408c2265e58..73eea6b1c25 100644 --- a/packages/i18n/src/locales/ko/common.json +++ b/packages/i18n/src/locales/ko/common.json @@ -17,6 +17,7 @@ "no": "아니오", "ok": "확인", "name": "이름", + "unknown_user": "알 수 없는 사용자", "description": "설명", "search": "검색", "add_member": "멤버 추가", @@ -56,7 +57,8 @@ "no_worklogs": "아직 작업 기록이 없습니다", "no_history": "아직 기록이 없습니다" }, - "appearance": "외관", + "preferences": "환경 설정", + "language_and_time": "언어 및 시간", "notifications": "알림", "workspaces": "작업 공간", "create_workspace": "작업 공간 생성", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "문제가 발생했습니다. 다시 시도해주세요.", "load_more": "더 보기", "select_or_customize_your_interface_color_scheme": "인터페이스 색상 구성표를 선택하거나 사용자 지정하세요.", + "timezone_setting": "현재 시간대 설정입니다.", + "language_setting": "사용자 인터페이스에서 사용할 언어를 선택하세요.", + "settings_moved_to_preferences": "시간대 및 언어 설정이 환경 설정으로 이동되었습니다.", + "go_to_preferences": "환경 설정으로 이동", "select_the_cursor_motion_style_that_feels_right_for_you": "자신에게 맞는 커서 모션 스타일을 선택하세요.", "theme": "테마", "smooth_cursor": "부드러운 커서", @@ -163,6 +169,7 @@ "project_created_successfully": "프로젝트가 성공적으로 생성되었습니다", "project_created_successfully_description": "프로젝트가 성공적으로 생성되었습니다. 이제 작업 항목을 추가할 수 있습니다.", "project_name_already_taken": "프로젝트 이름이 이미 사용 중입니다.", + "project_name_cannot_contain_special_characters": "프로젝트 이름에는 특수 문자를 사용할 수 없습니다.", "project_identifier_already_taken": "프로젝트 식별자가 이미 사용 중입니다.", "project_cover_image_alt": "프로젝트 커버 이미지", "name_is_required": "이름이 필요합니다", @@ -207,6 +214,7 @@ "issues": "작업 항목", "cycles": "주기", "modules": "모듈", + "pages": "페이지", "intake": "접수", "renew": "갱신", "preview": "미리보기", @@ -298,6 +306,7 @@ "start_date": "시작 날짜", "end_date": "종료 날짜", "due_date": "마감일", + "target_date": "목표일", "estimate": "추정", "change_parent_issue": "상위 작업 항목 변경", "remove_parent_issue": "상위 작업 항목 제거", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "새 비밀번호는 이전 비밀번호와 다르게 설정해야 합니다", "edited": "수정됨", "bot": "봇", + "settings_description": "계정, 작업 공간 및 프로젝트 환경 설정을 한 곳에서 관리하세요. 탭 사이를 전환하여 손쉽게 구성할 수 있습니다.", + "back_to_workspace": "작업 공간으로 돌아가기", "upgrade_request": "워크스페이스 관리자에게 업그레이드를 요청하세요.", "copied_to_clipboard": "클립보드에 복사됨", "copied_to_clipboard_description": "URL이 클립보드에 성공적으로 복사되었습니다", @@ -422,6 +433,9 @@ "modules": "모듈", "labels": "레이블", "label": "레이블", + "admins": "관리자", + "users": "사용자", + "guests": "게스트", "assignees": "담당자", "assignee": "담당자", "created_by": "생성자", @@ -451,6 +465,8 @@ "work_item": "작업 항목", "work_items": "작업 항목", "sub_work_item": "하위 작업 항목", + "views": "보기", + "pages": "페이지", "add": "추가", "warning": "경고", "updating": "업데이트 중", @@ -496,7 +512,7 @@ "workspace_level": "작업 공간 수준", "order_by": { "label": "정렬 기준", - "manual": "수동", + "manual": "수동 - 순위", "last_created": "마지막 생성", "last_updated": "마지막 업데이트", "start_date": "시작 날짜", @@ -532,6 +548,7 @@ "continue": "계속", "resend": "다시 보내기", "relations": "관계", + "dependencies": "종속성", "errors": { "default": { "title": "오류!", @@ -563,11 +580,27 @@ "quarter": "분기", "press_for_commands": "명령어를 위해 '/'를 누르세요", "click_to_add_description": "설명 추가를 위해 클릭하세요", + "on_track": "계획대로 진행 중", + "off_track": "계획 이탈", + "at_risk": "위험", + "timeline": "타임라인", + "completion": "완료", + "upcoming": "예정된", + "completed": "완료됨", + "in_progress": "진행 중", + "planned": "계획된", + "paused": "일시 중지됨", "search": { "label": "검색", "placeholder": "검색어 입력", "no_matches_found": "일치하는 항목 없음", - "no_matching_results": "일치하는 결과 없음" + "no_matching_results": "일치하는 결과 없음", + "min_chars": "검색하려면 최소 {count}자를 입력하세요", + "error": "검색 결과를 가져오는 중 오류 발생", + "no_results": { + "title": "일치하는 결과 없음", + "description": "모든 결과를 보려면 검색 조건을 제거하세요" + } }, "actions": { "edit": "편집", @@ -584,7 +617,9 @@ "clear_sorting": "정렬 지우기", "show_weekends": "주말 표시", "enable": "활성화", - "disable": "비활성화" + "disable": "비활성화", + "copy_markdown": "마크다운 복사", + "reply": "답글" }, "name": "이름", "discard": "폐기", @@ -597,6 +632,7 @@ "disabled": "비활성화됨", "mandate": "의무", "mandatory": "필수", + "global": "글로벌", "yes": "예", "no": "아니오", "please_wait": "기다려주세요", @@ -606,6 +642,7 @@ "or": "또는", "next": "다음", "back": "뒤로", + "retry": "다시 시도", "cancelling": "취소 중", "configuring": "구성 중", "clear": "지우기", @@ -660,31 +697,27 @@ "deactivated_user": "비활성화된 사용자", "apply": "적용", "applying": "적용 중", - "users": "사용자", - "admins": "관리자", - "guests": "게스트", - "on_track": "계획대로 진행 중", - "off_track": "계획 이탈", - "at_risk": "위험", - "timeline": "타임라인", - "completion": "완료", - "upcoming": "예정된", - "completed": "완료됨", - "in_progress": "진행 중", - "planned": "계획된", - "paused": "일시 중지됨", + "overview": "오버뷰", "no_of": "{entity} 수", "resolved": "해결됨", + "get_started": "시작하기", "worklogs": "워크로그", "project_updates": "프로젝트 업데이트", - "overview": "오버뷰", "workflows": "워크플로우", "templates": "템플릿", + "business": "비즈니스", "members_and_teamspaces": "멤버와 팀스페이스", + "recurring_work_items": "반복 작업 항목", + "milestones": "마일스톤", "open_in_full_screen": "전체 화면으로 {page} 열기", "details": "세부 정보", "project_structure": "프로젝트 구조", - "custom_properties": "사용자 정의 속성" + "custom_properties": "사용자 정의 속성", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "X축", @@ -790,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane이 시작되지 않았습니다. 이는 하나 이상의 Plane 서비스가 시작에 실패했기 때문일 수 있습니다.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "확실히 하려면 setup.sh와 Docker 로그에서 View Logs를 선택하세요." }, + "customize_navigation": "내비게이션 사용자 지정", + "personal": "개인", + "accordion_navigation_control": "아코디언 사이드바 내비게이션", + "horizontal_navigation_bar": "탭 내비게이션", + "show_limited_projects_on_sidebar": "사이드바에 제한된 프로젝트 표시", + "enter_number_of_projects": "프로젝트 수 입력", + "pin": "고정", + "unpin": "고정 해제", "workspace_dashboards": "대시보드", "pi_chat": "인공지능 챗", "in_app": "인앱", "forms": "폼스", - "choose_workspace_for_integration": "이 앱에 연결할 작업 공간을 선택하세요", - "integrations_description": "Plane의 앱은 관리자인 작업 공간에 연결해야 합니다.", - "create_a_new_workspace": "새 작업 공간 만들기", - "learn_more_about_workspaces": "작업 공간에 대해 자세히 알아보기", - "no_workspaces_to_connect": "연결할 작업 공간이 없습니다", - "no_workspaces_to_connect_description": "연결할 작업 공간을 만들어야 합니다", + "milestones": "마일스톤", + "milestones_description": "마일스톤은 공유된 완료 일자에 맞춰 작업 항목을 정렬할 수 있는 레이어를 제공합니다.", "file_upload": { "upload_text": "파일을 업로드하려면 여기를 클릭하세요", "drag_drop_text": "드래그 앤 드롭", "processing": "처리 중", - "invalid": "유효하지 않은 파일 타입", + "invalid_file_type": "유효하지 않은 파일 타입", "missing_fields": "필드 누락", "success": "{fileName} 업로드 완료!" }, - "project_name_cannot_contain_special_characters": "프로젝트 이름에는 특수 문자를 사용할 수 없습니다.", "date": "데이트", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/ko/editor.json b/packages/i18n/src/locales/ko/editor.json index e2b478ae5c6..677832723ff 100644 --- a/packages/i18n/src/locales/ko/editor.json +++ b/packages/i18n/src/locales/ko/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "유효한 URL을 입력해 주세요." } + }, + "ai_block": { + "content": { + "placeholder": "이 블록의 내용을 설명하세요", + "generated_here": "AI 콘텐츠가 여기에 생성됩니다" + }, + "block_types": { + "placeholder": "블록 타입 선택", + "summarize_page": "페이지 요약", + "custom_prompt": "커스텀 프롬프트" + }, + "actions": { + "discard": "폐기", + "generate": "생성", + "generating": "생성 중", + "rewriting": "다시 작성 중", + "rewrite": "다시 작성", + "use_this": "이것 사용", + "refine": "정제" + } } } diff --git a/packages/i18n/src/locales/ko/empty-state.json b/packages/i18n/src/locales/ko/empty-state.json index daee6a8e486..d37876bc6f1 100644 --- a/packages/i18n/src/locales/ko/empty-state.json +++ b/packages/i18n/src/locales/ko/empty-state.json @@ -249,10 +249,22 @@ "title": "모든 멤버의 작업 시간표 추적", "description": "작업 항목에 시간을 기록하여 프로젝트 전반의 모든 팀 멤버에 대한 자세한 작업 시간표를 확인하세요." }, + "group_syncing": { + "title": "아직 그룹 매핑이 없습니다" + }, "template_setting": { "title": "아직 템플릿이 없습니다", "description": "프로젝트, 작업 항목 및 페이지에 대한 템플릿을 생성하여 설정 시간을 줄이고 몇 초 만에 새 작업을 시작하세요.", "cta_primary": "템플릿 생성" + }, + "workflows": { + "title": "아직 워크플로우가 없습니다", + "description": "워크플로우를 생성하여 작업 항목의 진행 상황을 관리하세요.", + "cta_primary": "새 워크플로우 추가", + "states": { + "title": "상태 추가", + "description": "작업 항목이 진행되는 상태를 선택하세요." + } } } } diff --git a/packages/i18n/src/locales/ko/integration.json b/packages/i18n/src/locales/ko/integration.json index 1abcb4ab9b3..cb7e6ad65ad 100644 --- a/packages/i18n/src/locales/ko/integration.json +++ b/packages/i18n/src/locales/ko/integration.json @@ -194,6 +194,10 @@ "server_error_states": "상태 로딩 중 서버 오류" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Bitbucket Data Center 리포지토리를 Plane과 연결하고 동기화하세요." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "API 접근을 위해 외부 IdP 토큰을 검증합니다.", @@ -302,6 +306,7 @@ "generic_error": "요청을 처리하는 동안 예상치 못한 오류가 발생했습니다", "connection_not_found": "요청한 연결을 찾을 수 없습니다", "multiple_connections_found": "하나만 예상했을 때 여러 연결이 발견되었습니다", + "cannot_create_multiple_connections": "이미 조직을 작업 공간과 연결했습니다. 새 연결을 추가하기 전에 기존 연결을 해제해 주세요.", "installation_not_found": "요청한 인스톨레이션을 찾을 수 없습니다", "user_not_found": "요청한 사용자를 찾을 수 없습니다", "error_fetching_token": "인증 토큰 가져오기에 실패했습니다", @@ -315,6 +320,7 @@ "pulling": "풀링 중", "timed_out": "시간 초과", "pulled": "풀링 완료", + "progressing": "진행 중", "transforming": "변환 중", "transformed": "변환 완료", "pushing": "푸싱 중", diff --git a/packages/i18n/src/locales/ko/module.json b/packages/i18n/src/locales/ko/module.json index 10b4a095908..36a131968ad 100644 --- a/packages/i18n/src/locales/ko/module.json +++ b/packages/i18n/src/locales/ko/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {모듈} other {모듈}}", - "no_module": "모듈 없음" + "no_module": "모듈 없음", + "select": "모듈 추가" } } diff --git a/packages/i18n/src/locales/ko/navigation.json b/packages/i18n/src/locales/ko/navigation.json index 8f47969cc7a..86ba3b79c24 100644 --- a/packages/i18n/src/locales/ko/navigation.json +++ b/packages/i18n/src/locales/ko/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "결과 없음" + } + } + }, "sidebar": { + "stickies": "스티키", + "your_work": "나의 작업", "projects": "프로젝트", "pages": "페이지", "new_work_item": "새 작업 항목", "home": "홈", - "your_work": "나의 작업", "inbox": "받은 편지함", "workspace": "작업 공간", "views": "보기", @@ -21,14 +29,6 @@ "epics": "에픽스", "upgrade_plan": "업그레이드 플랜", "plane_pro": "플레인 프로", - "business": "비즈니스", - "recurring_work_items": "반복 작업 항목" - }, - "command_k": { - "empty_state": { - "search": { - "title": "결과 없음" - } - } + "business": "비즈니스" } } diff --git a/packages/i18n/src/locales/ko/page.json b/packages/i18n/src/locales/ko/page.json index 5fbfe3a6080..bfc60e4de75 100644 --- a/packages/i18n/src/locales/ko/page.json +++ b/packages/i18n/src/locales/ko/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "페이지 연결", - "show_wiki_pages": "위키 페이지 표시", - "link_pages_to": "페이지 연결", - "linked_pages": "연결된 페이지", - "no_description": "이 페이지는 비어 있습니다. 여기에 무언가를 작성하고 이 플레이스홀더로 표시하세요.", - "toasts": { - "link": { - "success": { - "title": "페이지가 업데이트되었습니다", - "message": "페이지가 성공적으로 업데이트되었습니다." - }, - "error": { - "title": "페이지가 업데이트되지 않았습니다", - "message": "페이지를 업데이트할 수 없습니다." - } - }, - "remove": { - "success": { - "title": "페이지가 삭제되었습니다", - "message": "페이지가 성공적으로 삭제되었습니다." - }, - "error": { - "title": "페이지가 삭제되지 않았습니다", - "message": "페이지를 삭제할 수 없습니다." - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "이미지가 없습니다", "description": "이미지를 추가하여 여기에서 확인하세요." } + }, + "comments": { + "label": "댓글", + "empty_state": { + "title": "댓글 없음", + "description": "댓글을 추가하여 여기에서 확인하세요." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "스티키 이름은 100자를 초과할 수 없습니다.", + "already_exists": "설명이 없는 스티키가 이미 존재합니다" + }, + "created": { + "title": "스티키 생성됨", + "message": "스티키가 성공적으로 생성되었습니다" + }, + "not_created": { + "title": "스티키가 생성되지 않음", + "message": "스티키를 생성할 수 없습니다" + }, + "updated": { + "title": "스티키 업데이트됨", + "message": "스티키가 성공적으로 업데이트되었습니다" + }, + "not_updated": { + "title": "스티키가 업데이트되지 않음", + "message": "스티키를 업데이트할 수 없습니다" + }, + "removed": { + "title": "스티키 제거됨", + "message": "스티키가 성공적으로 제거되었습니다" + }, + "not_removed": { + "title": "스티키가 제거되지 않음", + "message": "스티키를 제거할 수 없습니다" } }, "open_button": "네비게이션 패널 열기", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "이동", + "loading": "이동 중" + }, + "cannot_move_to_teamspace": "비공개 및 공유 페이지는 팀스페이스로 이동할 수 없습니다.", "placeholders": { + "workspace_to_all": "프로젝트 및 팀스페이스 검색", + "workspace_to_project": "프로젝트 검색", + "project_to_all": "프로젝트 및 팀스페이스 검색", + "project_to_project": "프로젝트 검색", "project_to_all_with_wiki": "위키 컬렉션, 프로젝트 및 팀스페이스 검색", "project_to_project_with_wiki": "위키 컬렉션 및 프로젝트 검색" }, "toasts": { + "success": { + "title": "성공!", + "message": "페이지가 성공적으로 이동되었습니다." + }, + "error": { + "title": "오류!", + "message": "페이지를 이동할 수 없습니다. 나중에 다시 시도해 주세요." + }, "collection_error": { "title": "위키로 이동됨", "message": "페이지가 위키로 이동되었지만 선택한 컬렉션에 추가할 수 없었습니다. 페이지는 General에 그대로 유지됩니다." diff --git a/packages/i18n/src/locales/ko/project-settings.json b/packages/i18n/src/locales/ko/project-settings.json index 195bb378561..cf0716946e1 100644 --- a/packages/i18n/src/locales/ko/project-settings.json +++ b/packages/i18n/src/locales/ko/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "멤버", "project_lead": "프로젝트 리드", + "project_lead_description": "프로젝트의 프로젝트 리더를 선택하세요.", "default_assignee": "기본 담당자", + "default_assignee_description": "프로젝트의 기본 담당자를 선택하세요.", + "project_subscribers": "프로젝트 구독자", + "project_subscribers_description": "이 프로젝트의 알림을 받을 멤버를 선택하세요.", "guest_super_permissions": { "title": "게스트 사용자에게 모든 작업 항목에 대한 보기 권한 부여:", "sub_heading": "이렇게 하면 게스트가 모든 프로젝트 작업 항목에 대한 보기 권한을 갖게 됩니다." @@ -30,13 +34,11 @@ "title": "멤버 초대", "sub_heading": "프로젝트에서 작업할 멤버를 초대하세요.", "select_co_worker": "동료 선택" - }, - "project_lead_description": "프로젝트의 프로젝트 리더를 선택하세요.", - "default_assignee_description": "프로젝트의 기본 담당자를 선택하세요.", - "project_subscribers": "프로젝트 구독자", - "project_subscribers_description": "이 프로젝트의 알림을 받을 멤버를 선택하세요." + } }, "states": { + "heading": "상태", + "description": "작업 항목의 진행 상황을 추적하기 위해 워크플로우 상태를 정의하고 사용자 정의하세요.", "describe_this_state_for_your_members": "멤버를 위해 이 상태를 설명하세요.", "empty_state": { "title": "{groupKey} 그룹에 사용할 수 있는 상태 없음", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "레이블", + "description": "작업 항목을 분류하고 정리할 수 있는 커스텀 레이블을 생성하세요", "label_title": "레이블 제목", "label_title_is_required": "레이블 제목이 필요합니다", "label_max_char": "레이블 이름은 255자를 초과할 수 없습니다", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "추정", + "description": "각 작업 항목에 필요한 노력을 추적하고 전달할 수 있는 추정 시스템을 설정하세요.", "label": "추정", "title": "프로젝트 추정 활성화", - "description": "팀의 복잡성과 작업량을 전달하는 데 도움이 됩니다.", + "enable_description": "팀의 복잡성과 작업량을 전달하는 데 도움이 됩니다.", "no_estimate": "추정 없음", "new": "새 추정 시스템", "create": { @@ -112,6 +118,16 @@ "title": "견적 순서 변경 실패", "message": "견적 순서를 변경할 수 없습니다. 다시 시도해 주세요." } + }, + "switch": { + "success": { + "title": "추정 시스템 생성됨", + "message": "성공적으로 생성되고 활성화되었습니다" + }, + "error": { + "title": "오류", + "message": "문제가 발생했습니다" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "자동화", + "heading": "자동화", + "description": "자동화된 액션을 구성하여 프로젝트 관리 워크플로우를 간소화하고 수동 작업을 줄이세요.", "auto-archive": { "title": "완료된 작업 항목 자동 보관", "description": "Plane은 완료되거나 취소된 작업 항목을 자동으로 보관합니다.", @@ -194,90 +212,116 @@ "description": "GitHub 및 기타 인테그레이션을 구성하여 프로젝트 작업 항목을 동기화하세요." } }, - "cycles": { - "auto_schedule": { - "heading": "사이클 자동 일정", - "description": "수동 설정 없이 사이클을 유지합니다.", - "tooltip": "선택한 일정에 따라 새로운 사이클을 자동으로 생성합니다.", - "edit_button": "편집", - "form": { - "cycle_title": { - "label": "사이클 제목", - "placeholder": "제목", - "tooltip": "제목은 후속 사이클에 번호가 추가됩니다. 예: 디자인 - 1/2/3", - "validation": { - "required": "사이클 제목은 필수입니다", - "max_length": "제목은 255자를 초과할 수 없습니다" - } - }, - "cycle_duration": { - "label": "사이클 기간", - "unit": "주", - "validation": { - "required": "사이클 기간은 필수입니다", - "min": "사이클 기간은 최소 1주 이상이어야 합니다", - "max": "사이클 기간은 30주를 초과할 수 없습니다", - "positive": "사이클 기간은 양수여야 합니다" - } - }, - "cooldown_period": { - "label": "쿨다운 기간", - "unit": "일", - "tooltip": "다음 사이클이 시작되기 전 사이클 간 휴지 기간입니다.", - "validation": { - "required": "쿨다운 기간은 필수입니다", - "negative": "쿨다운 기간은 음수일 수 없습니다" - } - }, - "start_date": { - "label": "사이클 시작일", - "validation": { - "required": "시작일은 필수입니다", - "past": "시작일은 과거일 수 없습니다" - } + "workflows": { + "toggle": { + "title": "워크플로우 활성화", + "description": "작업 항목 이동을 제어할 워크플로우를 설정하세요", + "no_states_tooltip": "워크플로우에 추가된 상태가 없습니다.", + "no_work_item_types_tooltip": "워크플로우에 추가된 작업 항목 유형이 없습니다.", + "no_states_or_work_item_types_tooltip": "워크플로우에 추가된 상태나 작업 항목 유형이 없습니다.", + "toast": { + "loading": { + "enabling": "워크플로우 활성화 중", + "disabling": "워크플로우 비활성화 중" }, - "number_of_cycles": { - "label": "미래 사이클 수", - "validation": { - "required": "사이클 수는 필수입니다", - "min": "최소 1개의 사이클이 필요합니다", - "max": "3개 이상의 사이클을 예약할 수 없습니다" - } + "success": { + "title": "성공!", + "message": "워크플로우가 성공적으로 활성화되었습니다." }, - "auto_rollover": { - "label": "작업 항목 자동 이월", - "tooltip": "사이클이 완료되는 날, 완료되지 않은 모든 작업 항목을 다음 사이클로 이동합니다." + "error": { + "title": "오류!", + "message": "워크플로우 활성화에 실패했습니다. 다시 시도해 주세요." + } + } + }, + "heading": "워크플로우", + "description": "작업 항목 전환을 자동화하고 태스크가 프로젝트 파이프라인을 이동하는 방식을 제어하는 규칙을 설정하세요.", + "add_button": "새 워크플로우 추가", + "search": "워크플로우 검색", + "detail": { + "define": "워크플로우 정의", + "add_states": "상태 추가", + "unmapped_states": { + "title": "매핑되지 않은 상태가 감지되었습니다", + "description": "선택한 유형의 일부 작업 항목이 현재 이 워크플로우에 존재하지 않는 상태에 있습니다.", + "note": "이 워크플로우를 활성화하면 해당 항목은 이 워크플로우의 초기 상태로 자동 이동합니다.", + "label": "누락된 상태", + "tooltip": "일부 작업 항목이 이 워크플로우에 매핑되지 않은 상태에 있습니다. 검토하려면 워크플로우를 여세요." + } + }, + "select_states": { + "empty_state": { + "title": "모든 상태가 사용 중입니다", + "description": "이 프로젝트에 정의된 모든 상태가 이미 현재 워크플로우에 포함되어 있습니다." + } + }, + "default_footer": { + "fallback_message": "이 워크플로우는 워크플로우에 할당되지 않은 모든 작업 항목 유형에 적용됩니다." + }, + "create": { + "heading": "새 워크플로우 만들기", + "name": { + "placeholder": "고유한 이름 추가", + "validation": { + "max_length": "이름은 255자 미만이어야 합니다", + "required": "이름은 필수입니다", + "invalid": "이름은 문자, 숫자, 공백, 하이픈 및 아포스트로피만 포함할 수 있습니다" } }, - "toast": { - "toggle": { - "loading_enable": "사이클 자동 일정 활성화 중", - "loading_disable": "사이클 자동 일정 비활성화 중", - "success": { - "title": "성공!", - "message": "사이클 자동 일정이 성공적으로 전환되었습니다." - }, - "error": { - "title": "오류!", - "message": "사이클 자동 일정 전환에 실패했습니다." - } - }, - "save": { - "loading": "사이클 자동 일정 구성 저장 중", - "success": { - "title": "성공!", - "message_create": "사이클 자동 일정 구성이 성공적으로 저장되었습니다.", - "message_update": "사이클 자동 일정 구성이 성공적으로 업데이트되었습니다." - }, - "error": { - "title": "오류!", - "message_create": "사이클 자동 일정 구성 저장에 실패했습니다.", - "message_update": "사이클 자동 일정 구성 업데이트에 실패했습니다." - } + "description": { + "placeholder": "간단한 설명 추가", + "validation": { + "invalid": "설명은 문자, 숫자, 공백, 하이픈 및 아포스트로피만 포함할 수 있습니다" } + }, + "work_item_type": { + "label": "작업 항목 유형" + }, + "success": { + "title": "성공!", + "message": "워크플로우가 성공적으로 생성되었습니다." + }, + "error": { + "title": "오류!", + "message": "워크플로우 생성에 실패했습니다. 다시 시도해 주세요." + } + }, + "update": { + "success": { + "title": "성공!", + "message": "워크플로우가 성공적으로 업데이트되었습니다." + }, + "error": { + "title": "오류!", + "message": "워크플로우 업데이트에 실패했습니다. 다시 시도해 주세요." + } + }, + "delete": { + "loading": "워크플로우 삭제 중", + "success": { + "title": "성공!", + "message": "워크플로우가 성공적으로 삭제되었습니다." + }, + "error": { + "title": "오류!", + "message": "워크플로우 삭제에 실패했습니다. 다시 시도해 주세요." + } + }, + "add_states": { + "success": { + "title": "성공!", + "message": "상태가 성공적으로 추가되었습니다." + }, + "error": { + "title": "오류!", + "message": "상태 추가에 실패했습니다. 다시 시도해 주세요." } } }, + "work_item_types": { + "heading": "작업 항목 유형", + "description": "고유한 속성을 가진 다양한 유형의 작업 항목을 생성하고 사용자 정의하세요" + }, "features": { "cycles": { "title": "사이클", @@ -385,6 +429,98 @@ "success": "프로젝트 기능이 성공적으로 업데이트되었습니다.", "error": "프로젝트 기능 업데이트 중 문제가 발생했습니다. 다시 시도해 주세요." } + }, + "project_updates": { + "heading": "프로젝트 업데이트", + "description": "이 프로젝트에 대한 통합된 추적 및 진행 상황 모니터링" + }, + "templates": { + "heading": "템플릿", + "description": "템플릿을 사용하면 프로젝트, 작업 항목, 페이지를 생성하는 데 걸리는 시간을 80% 절약할 수 있습니다." + }, + "cycles": { + "auto_schedule": { + "heading": "사이클 자동 일정", + "description": "수동 설정 없이 사이클을 유지합니다.", + "tooltip": "선택한 일정에 따라 새로운 사이클을 자동으로 생성합니다.", + "edit_button": "편집", + "form": { + "cycle_title": { + "label": "사이클 제목", + "placeholder": "제목", + "tooltip": "제목은 후속 사이클에 번호가 추가됩니다. 예: 디자인 - 1/2/3", + "validation": { + "required": "사이클 제목은 필수입니다", + "max_length": "제목은 255자를 초과할 수 없습니다" + } + }, + "cycle_duration": { + "label": "사이클 기간", + "unit": "주", + "validation": { + "required": "사이클 기간은 필수입니다", + "min": "사이클 기간은 최소 1주 이상이어야 합니다", + "max": "사이클 기간은 30주를 초과할 수 없습니다", + "positive": "사이클 기간은 양수여야 합니다" + } + }, + "cooldown_period": { + "label": "쿨다운 기간", + "unit": "일", + "tooltip": "다음 사이클이 시작되기 전 사이클 간 휴지 기간입니다.", + "validation": { + "required": "쿨다운 기간은 필수입니다", + "negative": "쿨다운 기간은 음수일 수 없습니다" + } + }, + "start_date": { + "label": "사이클 시작일", + "validation": { + "required": "시작일은 필수입니다", + "past": "시작일은 과거일 수 없습니다" + } + }, + "number_of_cycles": { + "label": "미래 사이클 수", + "validation": { + "required": "사이클 수는 필수입니다", + "min": "최소 1개의 사이클이 필요합니다", + "max": "3개 이상의 사이클을 예약할 수 없습니다" + } + }, + "auto_rollover": { + "label": "작업 항목 자동 이월", + "tooltip": "사이클이 완료되는 날, 완료되지 않은 모든 작업 항목을 다음 사이클로 이동합니다." + } + }, + "toast": { + "toggle": { + "loading_enable": "사이클 자동 일정 활성화 중", + "loading_disable": "사이클 자동 일정 비활성화 중", + "success": { + "title": "성공!", + "message": "사이클 자동 일정이 성공적으로 전환되었습니다." + }, + "error": { + "title": "오류!", + "message": "사이클 자동 일정 전환에 실패했습니다." + } + }, + "save": { + "loading": "사이클 자동 일정 구성 저장 중", + "success": { + "title": "성공!", + "message_create": "사이클 자동 일정 구성이 성공적으로 저장되었습니다.", + "message_update": "사이클 자동 일정 구성이 성공적으로 업데이트되었습니다." + }, + "error": { + "title": "오류!", + "message_create": "사이클 자동 일정 구성 저장에 실패했습니다.", + "message_update": "사이클 자동 일정 구성 업데이트에 실패했습니다." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/ko/project.json b/packages/i18n/src/locales/ko/project.json index 56ccfa6effd..7175491bbc5 100644 --- a/packages/i18n/src/locales/ko/project.json +++ b/packages/i18n/src/locales/ko/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "프로젝트에 대한 필터링된 뷰를 저장하세요. 필요한 만큼 생성하세요", + "description": "뷰는 자주 사용하는 필터 또는 쉽게 접근하고 싶은 필터 세트입니다. 프로젝트의 모든 동료가 모든 사람의 뷰를 보고 자신에게 가장 적합한 뷰를 선택할 수 있습니다.", + "primary_button": { + "text": "첫 번째 뷰 생성", + "comic": { + "title": "뷰는 작업 항목 속성 위에서 작동합니다.", + "description": "여기에서 원하는 만큼의 속성을 필터로 사용하여 뷰를 생성할 수 있습니다." + } + }, + "filter": { + "title": "일치하는 뷰 없음", + "description": "검색 기준과 일치하는 뷰가 없습니다.\n 대신 새 뷰를 생성하세요." + } + }, + "no_archived_issues": { + "title": "아직 아카이브된 작업 항목이 없습니다", + "description": "수동으로 또는 자동화를 통해 완료되거나 취소된 작업 항목을 아카이브할 수 있습니다. 아카이브되면 여기에서 찾을 수 있습니다.", + "primary_button": { + "text": "자동화 설정" + } + }, + "issues_empty_filter": { + "title": "적용된 필터와 일치하는 작업 항목을 찾을 수 없습니다", + "secondary_button": { + "text": "모든 필터 지우기" + } + }, + "public": { + "title": "아직 공개 페이지가 없습니다", + "description": "프로젝트의 모든 사람과 공유된 페이지를 여기에서 확인하세요.", + "primary_button": { + "text": "첫 번째 페이지 생성" + } + }, + "archived": { + "title": "아직 아카이브된 페이지가 없습니다", + "description": "레이더에 없는 페이지를 아카이브하세요. 필요할 때 여기에서 접근하세요." + }, + "shared": { + "title": "아직 공유된 페이지가 없습니다", + "description": "다른 사람이 공유한 페이지가 여기에 표시됩니다." + } + }, + "delete_view": { + "title": "이 뷰를 삭제하시겠습니까?", + "content": "확인하면 이 뷰에 대해 선택한 모든 정렬, 필터 및 표시 옵션 + 레이아웃이 복원할 수 없는 방식으로 영구적으로 삭제됩니다." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "프로젝트에 대한 필터링된 뷰를 저장하세요. 필요한 만큼 생성하세요", - "description": "뷰는 자주 사용하는 필터 또는 쉽게 접근하고 싶은 필터 세트입니다. 프로젝트의 모든 동료가 모든 사람의 뷰를 보고 자신에게 가장 적합한 뷰를 선택할 수 있습니다.", - "primary_button": { - "text": "첫 번째 뷰 생성", - "comic": { - "title": "뷰는 작업 항목 속성 위에서 작동합니다.", - "description": "여기에서 원하는 만큼의 속성을 필터로 사용하여 뷰를 생성할 수 있습니다." - } - } - }, - "filter": { - "title": "일치하는 뷰 없음", - "description": "검색 기준과 일치하는 뷰가 없습니다. 대신 새 뷰를 생성하세요." - } - }, - "delete_view": { - "title": "이 뷰를 삭제하시겠습니까?", - "content": "확인하면 이 뷰에 대해 선택한 모든 정렬, 필터 및 표시 옵션 + 레이아웃이 복원할 수 없는 방식으로 영구적으로 삭제됩니다." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "수동" } }, + "project_members": { + "full_name": "성명", + "display_name": "표시 이름", + "email": "이메일", + "joining_date": "가입일", + "role": "역할" + }, "project": { "members_import": { "title": "CSV에서 구성원 가져오기", diff --git a/packages/i18n/src/locales/ko/settings.json b/packages/i18n/src/locales/ko/settings.json index 4ea65e47b1f..74a28921b0d 100644 --- a/packages/i18n/src/locales/ko/settings.json +++ b/packages/i18n/src/locales/ko/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "환경 설정", + "description": "작업 방식에 맞게 앱 환경을 사용자 정의하세요" + }, "notifications": { + "heading": "이메일 알림", + "description": "구독한 작업 항목에 대한 최신 정보를 유지하세요. 알림을 받으려면 이 기능을 활성화하세요.", "select_default_view": "기본 보기 선택", "compact": "컴팩트", "full": "전체 화면" + }, + "security": { + "heading": "보안" + }, + "api_tokens": { + "title": "퍼스널 액세스 토큰", + "description": "보안 API 토큰을 생성하여 외부 시스템 및 애플리케이션과 데이터를 통합하세요." + }, + "activity": { + "heading": "활동", + "description": "모든 프로젝트 및 작업 항목에 걸친 최근 작업과 변경 사항을 추적하세요." + }, + "connections": { + "title": "커넥션", + "heading": "커넥션", + "description": "작업 공간 연결 설정을 관리하세요." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "프로필", "security": "보안", "activity": "활동", - "appearance": "외관", + "preferences": "환경 설정", "notifications": "알림", + "api-tokens": "퍼스널 액세스 토큰", "connections": "커넥션" }, "tabs": { diff --git a/packages/i18n/src/locales/ko/template.json b/packages/i18n/src/locales/ko/template.json index 8a3b6073ac4..aeb7915e3ce 100644 --- a/packages/i18n/src/locales/ko/template.json +++ b/packages/i18n/src/locales/ko/template.json @@ -3,6 +3,9 @@ "settings": { "title": "템플릿", "description": "템플릿을 사용하면 프로젝트, 워크 아이템 및 페이지를 만드는 데 소요되는 시간의 80%를 절약할 수 있습니다.", + "new_project_template": "새 프로젝트 템플릿", + "new_work_item_template": "새 작업 항목 템플릿", + "new_page_template": "새 페이지 템플릿", "options": { "project": { "label": "프로젝트 템플릿" @@ -157,6 +160,14 @@ "required": "최소 하나의 키워드가 필요합니다" } }, + "website": { + "label": "웹사이트 URL", + "placeholder": "https://plane.so", + "validation": { + "invalid": "유효하지 않은 URL", + "maxLength": "URL은 800자 미만이어야 합니다" + } + }, "company_name": { "label": "회사 이름", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "유효하지 않은 이메일 주소", - "required": "지원 이메일이 필요합니다", "maxLength": "지원 이메일은 255자 미만이어야 합니다" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " 아직 라벨이 없습니다. 프로젝트의 워크 아이템을 구성하고 필터링하는 데 도움이 되는 라벨을 만드세요." }, + "no_modules": { + "description": "아직 모듈이 없습니다. 전담 리드와 담당자가 있는 하위 프로젝트로 작업을 구성하세요." + }, "no_work_items": { "description": "아직 워크 아이템이 없습니다. 하나를 추가하여 작업을 더 잘 구성하세요." }, diff --git a/packages/i18n/src/locales/ko/tour.json b/packages/i18n/src/locales/ko/tour.json index 4f2f8342c1b..16cf9cd4389 100644 --- a/packages/i18n/src/locales/ko/tour.json +++ b/packages/i18n/src/locales/ko/tour.json @@ -110,6 +110,12 @@ "description": "작업 항목을 스누즈하여 나중에 검토할 수 있습니다. 열린 요청 목록의 맨 아래로 이동됩니다." } }, + "mcp_connectors": { + "step_zero": { + "title": "탭 전환은 그만. 당신의 세계를 연결하세요.", + "description": "GitHub, Slack을 연결하여 PR을 추적하고 Plane AI에서 직접 채팅을 요약하세요." + } + }, "navigation": { "modal": { "title": "탐색, 재구상", diff --git a/packages/i18n/src/locales/ko/update.json b/packages/i18n/src/locales/ko/update.json index 6f48ea0c41d..7bc93c9c1af 100644 --- a/packages/i18n/src/locales/ko/update.json +++ b/packages/i18n/src/locales/ko/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "진행 상태", + "since_last_update": "마지막 업데이트부터", + "comments": "{count, plural, one{# 댓글} other{# 댓글}}" + }, "add_update": "업데이트 추가", "add_update_placeholder": "여기에 업데이트를 입력하세요", "empty": { "title": "아직 업데이트가 없습니다", "description": "여기에서 업데이트를 확인할 수 있습니다." }, - "delete": { - "title": "업데이트 삭제", - "confirmation": "이 업데이트를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.", - "success": { - "title": "업데이트가 삭제되었습니다", - "message": "업데이트가 성공적으로 삭제되었습니다." - }, - "error": { - "title": "업데이트 삭제 실패", - "message": "업데이트를 삭제할 수 없습니다." - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "진행 상태", - "since_last_update": "마지막 업데이트부터", - "comments": "{count, plural, one{# 댓글} other{# 댓글}}" - }, "create": { "success": { "title": "업데이트가 생성되었습니다", @@ -55,6 +43,18 @@ "message": "업데이트를 생성할 수 없습니다." } }, + "delete": { + "title": "업데이트 삭제", + "confirmation": "이 업데이트를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.", + "success": { + "title": "업데이트가 삭제되었습니다", + "message": "업데이트가 성공적으로 삭제되었습니다." + }, + "error": { + "title": "업데이트 삭제 실패", + "message": "업데이트를 삭제할 수 없습니다." + } + }, "update": { "success": { "title": "업데이트가 업데이트되었습니다", diff --git a/packages/i18n/src/locales/ko/wiki.json b/packages/i18n/src/locales/ko/wiki.json index 078680f57b3..4677c1bca3c 100644 --- a/packages/i18n/src/locales/ko/wiki.json +++ b/packages/i18n/src/locales/ko/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "페이지를 만들거나 컬렉션에 추가할 수 없습니다. 다시 시도해 주세요.", "collection_link_copied": "컬렉션 링크가 클립보드에 복사되었습니다." } + }, + "wiki": { + "upgrade_flow": { + "title": "업그레이드하여 위키 잠금 해제", + "description": "Plane Pro로 공개 페이지, 버전 기록, 공유 페이지, 실시간 협업, 작업 공간 페이지를 활용해 위키, 전사 문서 및 지식 베이스를 구축하세요.", + "upgrade_button": { + "text": "업그레이드" + }, + "learn_more_button": { + "text": "자세히 알아보기" + }, + "download_button": { + "text": "데이터 다운로드", + "loading": "다운로드 중" + }, + "tabs": { + "nested_pages": "중첩 페이지", + "add_embeds": "임베드 추가", + "publish_pages": "페이지 게시", + "comments": "댓글" + } + }, + "nested_pages_download_banner": { + "title": "중첩 페이지는 유료 플랜이 필요합니다. 업그레이드하여 잠금을 해제하세요." + } } } diff --git a/packages/i18n/src/locales/ko/work-item-type.json b/packages/i18n/src/locales/ko/work-item-type.json index 154b9f21918..a964f4ee8e4 100644 --- a/packages/i18n/src/locales/ko/work-item-type.json +++ b/packages/i18n/src/locales/ko/work-item-type.json @@ -3,11 +3,25 @@ "label": "워크 아이템 타입", "label_lowercase": "워크 아이템 타입", "settings": { - "title": "워크 아이템 타입", + "description": "팀의 요구에 맞게 자신만의 프로퍼티를 사용자 정의하고 추가하세요.", + "cant_delete_default_message": "이 작업 항목 유형은 삭제할 수 없습니다. 이 프로젝트의 기본 작업 항목 유형으로 설정되어 있기 때문입니다.", + "set_as_default": "기본값으로 설정", + "cant_set_default_inactive_message": "기본값으로 설정하기 전에 이 유형을 활성화하세요", + "set_default_confirmation": { + "title": "기본 작업 항목 유형으로 설정", + "description": "{name}을(를) 기본값으로 설정하면 이 워크스페이스의 모든 프로젝트에 가져옵니다. 모든 새 작업 항목은 기본적으로 이 유형을 사용합니다.", + "confirm_button": "기본값으로 설정" + }, "properties": { "title": "커스텀 프로퍼티", + "description": "프로퍼티를 생성하고 사용자 정의하세요.", "tooltip": "각 워크 아이템 타입에는 제목, 설명, 담당자, 상태, 우선순위, 시작 날짜, 마감일, 모듈, 사이클 등과 같은 기본 프로퍼티 세트가 함께 제공됩니다. 팀의 요구에 맞게 자신만의 프로퍼티를 사용자 정의하고 추가할 수도 있습니다.", "add_button": "새 프로퍼티 추가", + "project": { + "add_button": { + "import_from_workspace": "워크스페이스에서 가져오기" + } + }, "dropdown": { "label": "프로퍼티 타입", "placeholder": "타입 선택" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "새 커스텀 프로퍼티 생성", + "update": "커스텀 프로퍼티 업데이트" + }, "form": { "display_name": { "placeholder": "타이틀" @@ -213,9 +231,50 @@ "description": "이 워크 아이템 타입에 대해 추가하는 새 프로퍼티가 여기에 표시됩니다." } }, + "types": { + "title": "타입", + "description": "프로퍼티로 작업 항목 유형을 생성하고 사용자 정의하세요.", + "sort_options": { + "project_count": "소속된 프로젝트 수" + }, + "filter_options": { + "show_active": "활성 표시", + "show_inactive": "비활성 표시" + }, + "project": { + "add_button": { + "create_new": "새로 생성", + "import_from_workspace": "워크스페이스에서 가져오기" + }, + "banner": { + "with_access": "워크스페이스 수준에서 타입을 가져오려면 작업 항목 유형을 활성화하세요", + "without_access": "작업 항목 유형이 비활성화되어 있습니다. 워크스페이스 관리자에게 문의하여 워크스페이스 설정에서 활성화하세요." + } + } + }, + "linked_properties": { + "title": "커스텀 프로퍼티", + "add_button": "프로퍼티 추가", + "modal": { + "title": "프로퍼티 추가", + "empty": { + "title": "사용 가능한 프로퍼티 없음", + "description": "모든 프로퍼티가 이미 이 타입에 연결되어 있습니다." + } + }, + "unlink_confirmation": { + "title": "프로퍼티 연결 해제", + "description": "이 프로퍼티의 연결을 해제하면 이 타입을 사용하는 모든 작업 항목에서 해당 값이 영구적으로 삭제됩니다. 이 작업은 취소할 수 없습니다.", + "input_label": "입력", + "input_label_suffix": "계속하려면:", + "confirm": "프로퍼티 연결 해제", + "loading": "연결 해제 중" + } + }, "item_delete_confirmation": { "title": "이 유형 삭제", "description": "유형을 삭제하면 기존 데이터가 손실될 수 있습니다.", + "can_disable_warning": "대신 유형을 비활성화하시겠습니까?", "primary_button": "예, 삭제합니다", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "기본 작업 항목 유형은 삭제할 수 없습니다", "cannot_delete_work_item_type_with_associated_work_items": "연결된 작업 항목이 있는 작업 항목 유형은 삭제할 수 없습니다" - }, - "can_disable_warning": "대신 유형을 비활성화하시겠습니까?" - }, - "cant_delete_default_message": "이 작업 항목 유형은 삭제할 수 없습니다. 이 프로젝트의 기본 작업 항목 유형으로 설정되어 있기 때문입니다.", - "set_as_default": "기본값으로 설정", - "cant_set_default_inactive_message": "기본값으로 설정하기 전에 이 유형을 활성화하세요", - "set_default_confirmation": { - "title": "기본 작업 항목 유형으로 설정", - "description": "{name}을(를) 기본값으로 설정하면 이 워크스페이스의 모든 프로젝트에 가져옵니다. 모든 새 작업 항목은 기본적으로 이 유형을 사용합니다.", - "confirm_button": "기본값으로 설정" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "에러!", "message": { + "default": "작업 항목 유형 생성에 실패했습니다. 다시 시도해 주세요!", "conflict": "{name} 유형이 이미 존재합니다. 다른 이름을 선택하세요." } } @@ -269,6 +320,7 @@ "error": { "title": "에러!", "message": { + "default": "작업 항목 유형 업데이트에 실패했습니다. 다시 시도해 주세요!", "conflict": "{name} 유형이 이미 존재합니다. 다른 이름을 선택하세요." } } @@ -383,10 +435,10 @@ } }, "break_hierarchy_modal": { - "title": "유효성 검사 오류!", + "title": "저장하면 기존 링크가 끊어집니다", "content": { "intro": "작업 항목 유형 {workItemTypeName}에 다음이 있습니다.", - "parent_items": "{count, plural, other {상위 작업 항목}}", + "parent_items": "{count, plural, other {#개 상위 링크가}} 제거됩니다.", "child_items": "{count, plural, other {하위 작업 항목}}", "parent_line_suffix_when_also_children": ", 그리고 ", "footer": "이 변경은 {workItemTypeName} 작업 항목 유형의 기존 작업 항목에서 상위·하위 관계를 제거합니다." @@ -397,11 +449,11 @@ }, "error_toast": { "title": "오류!", - "message": "계층 구조를 깨뜨리지 못했습니다. 다시 시도해 주세요." + "message": "연결을 해제하고 저장하지 못했습니다. 다시 시도해 주세요." }, "confirm_button": { - "loading": "적용 중", - "default": "적용 및 연결 해제" + "loading": "저장 중", + "default": "그래도 저장" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/ko/work-item.json b/packages/i18n/src/locales/ko/work-item.json index 1cafa85eff7..259adc2fc57 100644 --- a/packages/i18n/src/locales/ko/work-item.json +++ b/packages/i18n/src/locales/ko/work-item.json @@ -20,6 +20,7 @@ "due_date": "마감일 추가", "parent": "상위 작업 항목 추가", "sub_issue": "하위 작업 항목 추가", + "dependency": "종속성 추가", "relation": "관계 추가", "link": "링크 추가", "existing": "기존 작업 항목 추가" @@ -110,6 +111,43 @@ "copy_link": { "success": "댓글 링크가 클립보드에 복사되었습니다", "error": "댓글 링크 복사 중 오류가 발생했습니다. 나중에 다시 시도해 주세요." + }, + "replies": { + "create": { + "submit_button": "답글 추가", + "placeholder": "답글 추가" + }, + "toast": { + "fetch": { + "error": { + "message": "답글을 가져오지 못했습니다" + } + }, + "create": { + "success": { + "message": "답글이 성공적으로 생성되었습니다" + }, + "error": { + "message": "답글 생성에 실패했습니다" + } + }, + "update": { + "success": { + "message": "답글이 성공적으로 업데이트되었습니다" + }, + "error": { + "message": "답글 업데이트에 실패했습니다" + } + }, + "delete": { + "success": { + "message": "답글이 성공적으로 삭제되었습니다" + }, + "error": { + "message": "답글 삭제에 실패했습니다" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "모두 선택 해제" }, "open_in_full_screen": "작업 항목을 전체 화면으로 열기", + "duplicate": { + "modal": { + "title": "다른 프로젝트로 복사본 만들기", + "description1": "작업 항목의 복사본을 생성합니다.", + "description2": "복제하는 동안 모든 속성 데이터가 제거됩니다.", + "placeholder": "프로젝트 선택" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "작업 항목이 성공적으로 복제되었습니다" + }, + "error": { + "message": "작업 항목 복제에 실패했습니다" + } + } + }, + "pages": { + "link_pages": "페이지 연결", + "show_wiki_pages": "위키 페이지 표시", + "link_pages_to": "페이지 연결", + "linked_pages": "연결된 페이지", + "no_description": "이 페이지는 비어 있습니다. 여기에 무언가를 작성하고 이 플레이스홀더로 표시하세요.", + "toasts": { + "link": { + "success": { + "title": "페이지가 업데이트되었습니다", + "message": "페이지가 성공적으로 업데이트되었습니다" + }, + "error": { + "title": "페이지 업데이트 실패", + "message": "페이지 업데이트에 실패했습니다" + } + }, + "remove": { + "success": { + "title": "페이지 제거됨", + "message": "페이지가 성공적으로 제거되었습니다" + }, + "error": { + "title": "페이지 제거 실패", + "message": "페이지 제거에 실패했습니다" + } + } + } + }, "vote": { "click_to_upvote": "클릭하여 추천", "click_to_downvote": "클릭하여 비추천", @@ -241,54 +326,6 @@ "title": "작업 항목을 업데이트할 수 없습니다", "message": "일부 작업 항목에 대해 상태 변경이 허용되지 않습니다. 상태 변경이 허용되는지 확인하세요." } - }, - "workflows": { - "toggle": { - "title": "워크플로우 활성화", - "description": "워크 아이템 이동을 제어할 수 있도록 워크플로우를 설정하세요.", - "no_states_tooltip": "워크플로우에 추가된 스테이트가 없습니다.", - "toast": { - "loading": { - "enabling": "워크플로우 활성화 중", - "disabling": "워크플로우 비활성화 중" - }, - "success": { - "title": "성공!", - "message": "워크플로우가 성공적으로 활성화되었습니다." - }, - "error": { - "title": "오류!", - "message": "워크플로우를 활성화하지 못했습니다. 다시 시도해 주세요." - } - } - }, - "heading": "워크플로우", - "description": "워크 아이템 전환을 자동화하고 작업이 프로젝트 파이프라인을 따라 어떻게 이동하는지 제어하는 규칙을 설정하세요.", - "add_button": "새 워크플로우 추가", - "search": "워크플로우 검색", - "detail": { - "define": "워크플로우 정의", - "add_states": "스테이트 추가", - "unmapped_states": { - "title": "매핑되지 않은 스테이트가 감지되었습니다", - "description": "선택한 타입의 일부 워크 아이템이 현재 이 워크플로우에 존재하지 않는 스테이트에 있습니다.", - "note": "이 워크플로우를 활성화하면 해당 항목은 이 워크플로우의 초기 스테이트로 자동 이동합니다.", - "label": "누락된 스테이트", - "tooltip": "일부 워크 아이템이 이 워크플로우에 매핑되지 않은 스테이트에 있습니다. 검토하려면 워크플로우를 여세요." - } - }, - "select_states": { - "empty_state": { - "title": "모든 스테이트가 이미 사용 중입니다", - "description": "이 프로젝트에 정의된 모든 스테이트가 이미 현재 워크플로우에 포함되어 있습니다." - } - }, - "default_footer": { - "fallback_message": "이 워크플로우는 어떤 워크플로우에도 할당되지 않은 모든 워크 아이템 타입에 적용됩니다." - }, - "create": { - "heading": "새 워크플로우 만들기" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/ko/workspace-settings.json b/packages/i18n/src/locales/ko/workspace-settings.json index 673918181a1..3b764936695 100644 --- a/packages/i18n/src/locales/ko/workspace-settings.json +++ b/packages/i18n/src/locales/ko/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "청구 및 플랜", + "description": "플랜을 선택하고, 구독을 관리하며, 필요에 따라 손쉽게 업그레이드하세요.", "title": "청구 및 플랜", "current_plan": "현재 플랜", "free_plan": "현재 무료 플랜을 사용 중입니다", "view_plans": "플랜 보기" }, "exports": { + "heading": "내보내기", + "description": "프로젝트 데이터를 다양한 형식으로 내보내고 다운로드 링크가 포함된 내보내기 기록에 접근하세요.", "title": "내보내기", "exporting": "내보내기 중", "previous_exports": "이전 내보내기", "export_separate_files": "데이터를 별도의 파일로 내보내기", + "exporting_projects": "프로젝트 내보내는 중", + "format": "포맷", "filters_info": "기준에 따라 특정 작업 항목을 내보내려면 필터를 적용하세요.", "modal": { "title": "내보내기", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "웹훅", + "description": "프로젝트 이벤트가 발생할 때 외부 서비스로 알림을 자동화하세요.", "title": "웹훅", "add_webhook": "웹훅 추가", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "인테그레이션", + "heading": "인테그레이션", + "description": "인기 있는 도구 및 서비스와 연결하여 전체 워크플로우 에코시스템에서 작업을 동기화하세요.", "page_title": "Plane 데이터를 사용 가능한 앱이나 본인 소유 앱에서 활용하세요.", "page_description": "이 워크스페이스 또는 사용자가 사용하는 모든 통합을 확인하세요." }, "imports": { - "title": "임포트" + "title": "임포트", + "heading": "임포트", + "description": "기존 프로젝트 관리 도구에서 데이터를 연결하고 가져와 워크플로우 통합을 간소화하세요." }, "worklogs": { - "title": "워크로그" + "title": "워크로그", + "heading": "워크로그", + "description": "어떤 프로젝트의 누구의 워크로그(타임시트)든 다운로드하세요." }, "group_syncing": { "title": "그룹 동기화", @@ -242,7 +256,10 @@ "description": "도메인을 구성하고 Single sign-on을 활성화하세요" }, "project_states": { - "title": "프로젝트 스테이트" + "title": "프로젝트 스테이트", + "heading": "모든 프로젝트의 진행 상황 개요를 확인하세요.", + "description": "프로젝트 스테이트는 어떤 프로젝트 속성으로든 모든 프로젝트의 진행 상황을 추적하는 Plane 전용 기능입니다.", + "go_to_settings": "설정으로 이동" }, "projects": { "title": "프로젝트", @@ -252,6 +269,16 @@ "labels": "프로젝트 레이블" } }, + "templates": { + "title": "템플릿", + "heading": "템플릿", + "description": "템플릿을 사용하면 프로젝트, 작업 항목, 페이지를 생성하는 데 걸리는 시간을 80% 절약할 수 있습니다." + }, + "relations": { + "title": "관계", + "heading": "관계", + "description": "작업 공간 전반의 작업 항목을 연결하는 관계 타입을 생성하고 관리하세요." + }, "cancel_trial": { "title": "먼저 트라이얼을 취소하세요.", "description": "유료 플랜 중 하나에 대한 활성 트라이얼이 있습니다. 계속하려면 먼저 이를 취소하세요.", @@ -263,6 +290,7 @@ "cancel_error_message": "다시 시도해 주세요." }, "applications": { + "internal": "내부", "title": "애플리케이션", "applicationId_copied": "애플리케이션 ID가 클립보드에 복사되었습니다", "clientId_copied": "클라이언트 ID가 클립보드에 복사되었습니다", @@ -271,10 +299,61 @@ "your_apps": "내 앱", "connect": "연결", "connected": "연결됨", + "disconnect": "연결 해제", "install": "설치", "installed": "설치됨", "configure": "설정", "app_available": "이 앱을 Plane 워크스페이스에서 사용할 수 있게 되었습니다", + "app_credentials_regenrated": { + "title": "앱 자격 증명이 성공적으로 재생성되었습니다", + "description": "클라이언트 시크릿이 사용되는 모든 곳에서 교체하세요. 이전 시크릿은 더 이상 유효하지 않습니다." + }, + "app_created": { + "title": "앱이 성공적으로 생성되었습니다", + "description": "자격 증명을 사용하여 Plane 작업 공간에 앱을 설치하세요" + }, + "installed_apps": "설치된 앱", + "all_apps": "모든 앱", + "internal_apps": "내부 앱", + "app_name_title": "이 앱의 이름을 지정하세요", + "app_description_title": { + "label": "긴 설명", + "placeholder": "마켓플레이스를 위한 긴 설명을 작성하세요. 명령을 보려면 '/' 키를 누르세요." + }, + "authorization_grant_type": { + "title": "연결 유형", + "description": "앱을 워크스페이스에 한 번 설치할지, 각 사용자가 자신의 계정을 연결할 수 있도록 할지 선택하세요" + }, + "website": { + "title": "웹사이트", + "description": "앱 웹사이트로 연결되는 링크입니다.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "앱 메이커", + "description": "앱을 만드는 개인 또는 조직입니다." + }, + "app_maker_error": "앱 제작자는 필수입니다", + "setup_url": { + "label": "설정 URL", + "description": "사용자가 앱을 설치하면 이 URL로 리디렉션됩니다.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "웹훅 URL", + "description": "앱이 설치된 작업 공간에서 발생하는 웹훅 이벤트와 업데이트를 여기에 전송합니다.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "웹훅 시크릿", + "description": "들어오는 웹훅 요청을 검증하는 데 사용되는 시크릿입니다.", + "placeholder": "임의의 시크릿 키를 입력하세요" + }, + "redirect_uris": { + "label": "리디렉션 URI(공백으로 구분)", + "description": "사용자가 Plane에서 인증을 완료하면 이 경로로 리디렉션됩니다.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "사용을 시작하려면 Plane 워크스페이스에 연결하세요", "client_id_and_secret": "클라이언트 ID와 시크릿", "client_id_and_secret_description": "이 시크릿 키를 복사하여 저장하세요. 닫기를 누른 후에는 이 키를 볼 수 없습니다.", @@ -286,23 +365,13 @@ "slug_already_exists": "슬러그가 이미 존재합니다", "failed_to_create_application": "애플리케이션 생성 실패", "upload_logo": "로고 업로드", - "app_name_title": "이 앱의 이름을 지정하세요", "app_name_error": "앱 이름은 필수입니다", "app_short_description_title": "이 앱에 대한 간단한 설명을 작성하세요", "app_short_description_error": "앱 간단 설명은 필수입니다", - "app_description_title": { - "label": "긴 설명", - "placeholder": "마켓플레이스를 위한 긴 설명을 작성하세요. 명령을 보려면 '/' 키를 누르세요." - }, - "authorization_grant_type": { - "title": "연결 유형", - "description": "앱을 워크스페이스에 한 번 설치할지, 각 사용자가 자신의 계정을 연결할 수 있도록 할지 선택하세요" - }, "app_description_error": "앱 설명은 필수입니다", "app_slug_title": "앱 슬러그", "app_slug_error": "앱 슬러그는 필수입니다", - "app_maker_title": "앱 제작자", - "app_maker_error": "앱 제작자는 필수입니다", + "invalid_website_error": "유효하지 않은 웹사이트", "webhook_url_title": "웹훅 URL", "webhook_url_error": "웹훅 URL은 필수입니다", "invalid_webhook_url_error": "잘못된 웹훅 URL", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "앱이 요청을 할 수 있는 출처를 공백으로 구분하여 입력하세요(예: app.com example.com)", "create_app": "앱 생성", "update_app": "앱 업데이트", + "build_your_own_app": "나만의 앱 만들기", + "edit_app_details": "앱 세부정보 편집", "regenerate_client_secret_description": "클라이언트 시크릿을 재생성합니다. 재생성 후 키를 복사하거나 CSV 파일로 다운로드할 수 있습니다.", "regenerate_client_secret": "클라이언트 시크릿 재생성", "regenerate_client_secret_confirm_title": "클라이언트 시크릿을 재생성하시겠습니까?", @@ -362,7 +433,6 @@ "video_url_title": "비디오 URL", "video_url_error": "비디오 URL은 필수입니다", "invalid_video_url_error": "유효하지 않은 비디오 URL", - "setup_url_title": "설정 URL", "setup_url_error": "설정 URL은 필수입니다", "invalid_setup_url_error": "유효하지 않은 설정 URL", "configuration_url_title": "설정 URL", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "유효하지 않은 파일 또는 크기 제한 초과 ({size} MB)", "uploading": "업로드 중...", "upload_and_save": "업로드 및 저장", - "app_credentials_regenrated": { - "title": "앱 자격 증명이 성공적으로 재생성되었습니다", - "description": "클라이언트 시크릿이 사용되는 모든 곳에서 교체하세요. 이전 시크릿은 더 이상 유효하지 않습니다." - }, - "app_created": { - "title": "앱이 성공적으로 생성되었습니다", - "description": "자격 증명을 사용하여 Plane 작업 공간에 앱을 설치하세요" - }, - "installed_apps": "설치된 앱", - "all_apps": "모든 앱", - "internal_apps": "내부 앱", - "website": { - "title": "웹사이트", - "description": "앱 웹사이트로 연결되는 링크입니다.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "앱 메이커", - "description": "앱을 만드는 개인 또는 조직입니다." - }, - "setup_url": { - "label": "설정 URL", - "description": "사용자가 앱을 설치하면 이 URL로 리디렉션됩니다.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "웹훅 URL", - "description": "앱이 설치된 작업 공간에서 발생하는 웹훅 이벤트와 업데이트를 여기에 전송합니다.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "리디렉션 URI(공백으로 구분)", - "description": "사용자가 Plane에서 인증을 완료하면 이 경로로 리디렉션됩니다.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "설치 요청", "app_consent_no_access_description": "이 앱은 워크스페이스 관리자가 설치한 후에만 설치할 수 있습니다. 계속 진행하려면 워크스페이스 관리자에게 문의하세요.", + "app_consent_unapproved_title": "이 앱은 아직 Plane의 검토나 승인을 받지 않았습니다.", + "app_consent_unapproved_description": "워크스페이스에 연결하기 전에 이 앱을 신뢰할 수 있는지 확인하세요.", + "go_to_app": "앱으로 이동", "enable_app_mentions": "앱 멘션 활성화", "enable_app_mentions_tooltip": "이 기능을 활성화하면 사용자가 워크 아이템을 이 애플리케이션에 언급하거나 할당할 수 있습니다.", "scopes": "범위", @@ -433,15 +472,18 @@ "profile": "사용자 프로필 정보에 대한 액세스", "agents": "에이전트 및 모든 에이전트 관련 엔티티에 대한 액세스", "assets": "에셋 및 모든 에셋 관련 엔티티에 대한 액세스" - }, - "build_your_own_app": "나만의 앱 만들기", - "edit_app_details": "앱 세부정보 편집", - "internal": "내부" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "작업이 더 똑똑하고 빨리 진행되도록 네이티브로 연결된 AI를 사용하세요." + }, + "runners": { + "title": "Plane Runner", + "heading": "스크립트", + "new_script": "새 스크립트", + "description": "커스텀 스크립트와 자동화 규칙으로 워크플로우를 자동화하세요." } }, "empty_state": { diff --git a/packages/i18n/src/locales/ko/workspace.json b/packages/i18n/src/locales/ko/workspace.json index d4112a92020..196b8e20a69 100644 --- a/packages/i18n/src/locales/ko/workspace.json +++ b/packages/i18n/src/locales/ko/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "범위 및 수요", "custom": "맞춤형 분석" }, + "total": "총 {entity}", + "started_work_items": "시작된 {entity}", + "backlog_work_items": "백로그 {entity}", + "un_started_work_items": "시작되지 않은 {entity}", + "completed_work_items": "완료된 {entity}", + "project_insights": "프로젝트 인사이트", + "summary_of_projects": "프로젝트 요약", + "all_projects": "모든 프로젝트", + "trend_on_charts": "차트의 추세", + "active_projects": "활성 프로젝트", + "customized_insights": "맞춤형 인사이트", + "created_vs_resolved": "생성됨 vs 해결됨", "empty_state": { - "customized_insights": { - "description": "귀하에게 할당된 작업 항목이 상태별로 나누어 여기에 표시됩니다.", - "title": "아직 데이터가 없습니다" + "project_insights": { + "title": "아직 데이터가 없습니다", + "description": "귀하에게 할당된 작업 항목이 상태별로 나누어 여기에 표시됩니다." }, "created_vs_resolved": { - "description": "시간이 지나면서 생성되고 해결된 작업 항목이 여기에 표시됩니다.", - "title": "아직 데이터가 없습니다" + "title": "아직 데이터가 없습니다", + "description": "시간이 지나면서 생성되고 해결된 작업 항목이 여기에 표시됩니다." }, - "project_insights": { + "customized_insights": { "title": "아직 데이터가 없습니다", "description": "귀하에게 할당된 작업 항목이 상태별로 나누어 여기에 표시됩니다." }, @@ -132,29 +144,11 @@ "description": "인테이크 트렌드 분석이 여기에 표시됩니다. 작업 항목을 인테이크에 추가하여 트렌드를 추적하세요." } }, - "created_vs_resolved": "생성됨 vs 해결됨", - "customized_insights": "맞춤형 인사이트", - "backlog_work_items": "백로그 {entity}", - "active_projects": "활성 프로젝트", - "trend_on_charts": "차트의 추세", - "all_projects": "모든 프로젝트", - "summary_of_projects": "프로젝트 요약", - "project_insights": "프로젝트 인사이트", - "started_work_items": "시작된 {entity}", - "total_work_items": "총 {entity}", - "total_projects": "총 프로젝트 수", - "total_admins": "총 관리자 수", - "total_users": "총 사용자 수", - "total_intake": "총 수입", - "un_started_work_items": "시작되지 않은 {entity}", - "total_guests": "총 게스트 수", - "completed_work_items": "완료된 {entity}", - "total": "총 {entity}", + "upgrade_to_plan": "{tab} 잠금 해제를 위해 {plan}(으)로 업그레이드하세요", + "workitem_resolved_vs_pending": "해결된 vs 대기 중인 작업 항목", "projects_by_status": "상태별 프로젝트", "active_users": "활성 사용자", - "intake_trends": "수용 추세", - "workitem_resolved_vs_pending": "해결된 vs 대기 중인 작업 항목", - "upgrade_to_plan": "{tab} 잠금 해제를 위해 {plan}(으)로 업그레이드하세요" + "intake_trends": "수용 추세" }, "workspace_projects": { "label": "{count, plural, one {프로젝트} other {프로젝트}}", @@ -318,6 +312,10 @@ "archived": { "title": "아직 보관된 페이지가 없습니다", "description": "현재 관심 없는 페이지를 보관하세요. 필요할 때 여기서 액세스하세요." + }, + "shared": { + "title": "아직 공유된 페이지가 없습니다", + "description": "다른 사람이 공유한 페이지가 여기에 표시됩니다." } } }, diff --git a/packages/i18n/src/locales/pl/auth.json b/packages/i18n/src/locales/pl/auth.json index bee373eaa4d..a39ce3ac3c6 100644 --- a/packages/i18n/src/locales/pl/auth.json +++ b/packages/i18n/src/locales/pl/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-mail", - "placeholder": "imię@firma.pl", - "errors": { - "required": "E-mail jest wymagany", - "invalid": "E-mail jest nieprawidłowy" - } - }, - "password": { - "label": "Hasło", - "set_password": "Ustaw hasło", - "placeholder": "Wpisz hasło", - "confirm_password": { - "label": "Potwierdź hasło", - "placeholder": "Potwierdź hasło" - }, - "current_password": { - "label": "Obecne hasło" - }, - "new_password": { - "label": "Nowe hasło", - "placeholder": "Wpisz nowe hasło" - }, - "change_password": { - "label": { - "default": "Zmień hasło", - "submitting": "Trwa zmiana hasła" - } - }, - "errors": { - "match": "Hasła nie pasują do siebie", - "empty": "Proszę wpisać swoje hasło", - "length": "Hasło musi mieć więcej niż 8 znaków", - "strength": { - "weak": "Hasło jest słabe", - "strong": "Hasło jest silne" - } - }, - "submit": "Ustaw hasło", - "toast": { - "change_password": { - "success": { - "title": "Sukces!", - "message": "Hasło zostało pomyślnie zmienione." - }, - "error": { - "title": "Błąd!", - "message": "Coś poszło nie tak. Spróbuj ponownie." - } - } - } - }, - "unique_code": { - "label": "Unikalny kod", - "placeholder": "123456", - "paste_code": "Wklej kod wysłany na Twój e-mail", - "requesting_new_code": "Żądanie nowego kodu", - "sending_code": "Wysyłanie kodu" - }, - "already_have_an_account": "Masz już konto?", - "login": "Zaloguj się", - "create_account": "Utwórz konto", - "new_to_plane": "Nowy w Plane?", - "back_to_sign_in": "Powrót do logowania", - "resend_in": "Wyślij ponownie za {seconds} sekund", - "sign_in_with_unique_code": "Zaloguj się za pomocą unikalnego kodu", - "forgot_password": "Zapomniałeś hasła?", - "username": { - "label": "Nazwa użytkownika", - "placeholder": "Wprowadź swoją nazwę użytkownika" - } - }, - "sign_up": { - "header": { - "label": "Utwórz konto i zacznij zarządzać pracą ze swoim zespołem.", - "step": { - "email": { - "header": "Rejestracja", - "sub_header": "" - }, - "password": { - "header": "Rejestracja", - "sub_header": "Zarejestruj się, korzystając z kombinacji e-maila i hasła." - }, - "unique_code": { - "header": "Rejestracja", - "sub_header": "Zarejestruj się, używając unikalnego kodu wysłanego na powyższy adres e-mail." - } - } - }, - "errors": { - "password": { - "strength": "Użyj silniejszego hasła, aby kontynuować" - } - } - }, - "sign_in": { - "header": { - "label": "Zaloguj się i zacznij zarządzać pracą ze swoim zespołem.", - "step": { - "email": { - "header": "Zaloguj się lub zarejestruj", - "sub_header": "" - }, - "password": { - "header": "Zaloguj się lub zarejestruj", - "sub_header": "Użyj adresu e-mail i hasła, aby się zalogować." - }, - "unique_code": { - "header": "Zaloguj się lub zarejestruj", - "sub_header": "Zaloguj się za pomocą unikalnego kodu wysłanego na powyższy adres e-mail." - } - } - } - }, - "forgot_password": { - "title": "Zresetuj swoje hasło", - "description": "Podaj zweryfikowany adres e-mail konta użytkownika, a wyślemy Ci link do resetowania hasła.", - "email_sent": "Wysłaliśmy link resetujący na Twój adres e-mail", - "send_reset_link": "Wyślij link do resetowania", - "errors": { - "smtp_not_enabled": "Administrator nie włączył SMTP, nie możemy wysłać linku do resetowania hasła" - }, - "toast": { - "success": { - "title": "E-mail wysłany", - "message": "Sprawdź skrzynkę pocztową, aby znaleźć link do resetowania hasła. Jeśli nie pojawi się w ciągu kilku minut, sprawdź folder spam." - }, - "error": { - "title": "Błąd!", - "message": "Coś poszło nie tak. Spróbuj ponownie." - } - } - }, - "reset_password": { - "title": "Ustaw nowe hasło", - "description": "Zabezpiecz swoje konto silnym hasłem" - }, - "set_password": { - "title": "Zabezpiecz swoje konto", - "description": "Ustawienie hasła pomoże Ci bezpiecznie się logować" - }, - "sign_out": { - "toast": { - "error": { - "title": "Błąd!", - "message": "Wylogowanie nie powiodło się. Spróbuj ponownie." - } - } - }, - "ldap": { - "header": { - "label": "Kontynuuj z {ldapProviderName}", - "sub_header": "Wprowadź swoje dane logowania {ldapProviderName}" - } - } - }, "sso": { "header": "Tożsamość", "description": "Skonfiguruj swoją domenę, aby uzyskać dostęp do funkcji bezpieczeństwa, w tym logowania jednokrotnego.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-mail", + "placeholder": "imię@firma.pl", + "errors": { + "required": "E-mail jest wymagany", + "invalid": "E-mail jest nieprawidłowy" + } + }, + "password": { + "label": "Hasło", + "set_password": "Ustaw hasło", + "placeholder": "Wpisz hasło", + "confirm_password": { + "label": "Potwierdź hasło", + "placeholder": "Potwierdź hasło" + }, + "current_password": { + "label": "Obecne hasło" + }, + "new_password": { + "label": "Nowe hasło", + "placeholder": "Wpisz nowe hasło" + }, + "change_password": { + "label": { + "default": "Zmień hasło", + "submitting": "Trwa zmiana hasła" + } + }, + "errors": { + "match": "Hasła nie pasują do siebie", + "empty": "Proszę wpisać swoje hasło", + "length": "Hasło musi mieć więcej niż 8 znaków", + "strength": { + "weak": "Hasło jest słabe", + "strong": "Hasło jest silne" + } + }, + "submit": "Ustaw hasło", + "toast": { + "change_password": { + "success": { + "title": "Sukces!", + "message": "Hasło zostało pomyślnie zmienione." + }, + "error": { + "title": "Błąd!", + "message": "Coś poszło nie tak. Spróbuj ponownie." + } + } + } + }, + "unique_code": { + "label": "Unikalny kod", + "placeholder": "123456", + "paste_code": "Wklej kod wysłany na Twój e-mail", + "requesting_new_code": "Żądanie nowego kodu", + "sending_code": "Wysyłanie kodu" + }, + "already_have_an_account": "Masz już konto?", + "login": "Zaloguj się", + "create_account": "Utwórz konto", + "new_to_plane": "Nowy w Plane?", + "back_to_sign_in": "Powrót do logowania", + "resend_in": "Wyślij ponownie za {seconds} sekund", + "sign_in_with_unique_code": "Zaloguj się za pomocą unikalnego kodu", + "forgot_password": "Zapomniałeś hasła?", + "username": { + "label": "Nazwa użytkownika", + "placeholder": "Wprowadź swoją nazwę użytkownika" + } + }, + "sign_up": { + "header": { + "label": "Utwórz konto i zacznij zarządzać pracą ze swoim zespołem.", + "step": { + "email": { + "header": "Rejestracja", + "sub_header": "" + }, + "password": { + "header": "Rejestracja", + "sub_header": "Zarejestruj się, korzystając z kombinacji e-maila i hasła." + }, + "unique_code": { + "header": "Rejestracja", + "sub_header": "Zarejestruj się, używając unikalnego kodu wysłanego na powyższy adres e-mail." + } + } + }, + "errors": { + "password": { + "strength": "Użyj silniejszego hasła, aby kontynuować" + } + } + }, + "sign_in": { + "header": { + "label": "Zaloguj się i zacznij zarządzać pracą ze swoim zespołem.", + "step": { + "email": { + "header": "Zaloguj się lub zarejestruj", + "sub_header": "" + }, + "password": { + "header": "Zaloguj się lub zarejestruj", + "sub_header": "Użyj adresu e-mail i hasła, aby się zalogować." + }, + "unique_code": { + "header": "Zaloguj się lub zarejestruj", + "sub_header": "Zaloguj się za pomocą unikalnego kodu wysłanego na powyższy adres e-mail." + } + } + } + }, + "forgot_password": { + "title": "Zresetuj swoje hasło", + "description": "Podaj zweryfikowany adres e-mail konta użytkownika, a wyślemy Ci link do resetowania hasła.", + "email_sent": "Wysłaliśmy link resetujący na Twój adres e-mail", + "send_reset_link": "Wyślij link do resetowania", + "errors": { + "smtp_not_enabled": "Administrator nie włączył SMTP, nie możemy wysłać linku do resetowania hasła" + }, + "toast": { + "success": { + "title": "E-mail wysłany", + "message": "Sprawdź skrzynkę pocztową, aby znaleźć link do resetowania hasła. Jeśli nie pojawi się w ciągu kilku minut, sprawdź folder spam." + }, + "error": { + "title": "Błąd!", + "message": "Coś poszło nie tak. Spróbuj ponownie." + } + } + }, + "reset_password": { + "title": "Ustaw nowe hasło", + "description": "Zabezpiecz swoje konto silnym hasłem" + }, + "set_password": { + "title": "Zabezpiecz swoje konto", + "description": "Ustawienie hasła pomoże Ci bezpiecznie się logować" + }, + "sign_out": { + "toast": { + "error": { + "title": "Błąd!", + "message": "Wylogowanie nie powiodło się. Spróbuj ponownie." + } + } + }, + "ldap": { + "header": { + "label": "Kontynuuj z {ldapProviderName}", + "sub_header": "Wprowadź swoje dane logowania {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/pl/common.json b/packages/i18n/src/locales/pl/common.json index 761dab27b05..4c4850cbf66 100644 --- a/packages/i18n/src/locales/pl/common.json +++ b/packages/i18n/src/locales/pl/common.json @@ -513,6 +513,8 @@ "order_by": { "label": "Sortuj według", "manual": "Ręcznie - Ranking", + "last_created": "Last created", + "last_updated": "Last updated", "start_date": "Data rozpoczęcia", "due_date": "Termin", "asc": "Rosnąco", @@ -710,7 +712,12 @@ "open_in_full_screen": "Otwórz {page} na pełnym ekranie", "details": "Szczegóły", "project_structure": "Struktura projektu", - "custom_properties": "Właściwości niestandardowe" + "custom_properties": "Właściwości niestandardowe", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Oś X", diff --git a/packages/i18n/src/locales/pl/integration.json b/packages/i18n/src/locales/pl/integration.json index c3fe3689247..67c05cc6279 100644 --- a/packages/i18n/src/locales/pl/integration.json +++ b/packages/i18n/src/locales/pl/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Błąd serwera podczas ładowania stanów" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Połącz i synchronizuj repozytoria Bitbucket Data Center z Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Walidacja tokenów zewnętrznych IdP dla dostępu do API.", @@ -302,6 +306,7 @@ "generic_error": "Wystąpił nieoczekiwany błąd podczas przetwarzania Twojego żądania", "connection_not_found": "Nie można znaleźć żądanego połączenia", "multiple_connections_found": "Znaleziono wiele połączeń, gdy oczekiwano tylko jednego", + "cannot_create_multiple_connections": "Twoja organizacja jest już połączona z przestrzenią roboczą. Rozłącz istniejące połączenie przed utworzeniem nowego.", "installation_not_found": "Nie można znaleźć żądanej instalacji", "user_not_found": "Nie można znaleźć żądanego użytkownika", "error_fetching_token": "Nie udało się pobrać tokenu uwierzytelniającego", @@ -315,6 +320,7 @@ "pulling": "Pobieranie", "timed_out": "Przekroczenie czasu oczekiwania", "pulled": "Pobrano", + "progressing": "W toku", "transforming": "Transformowanie", "transformed": "Przekształcono", "pushing": "Przesyłanie", diff --git a/packages/i18n/src/locales/pl/module.json b/packages/i18n/src/locales/pl/module.json index 0f7f7a6f44b..80e97ece4d0 100644 --- a/packages/i18n/src/locales/pl/module.json +++ b/packages/i18n/src/locales/pl/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Moduł} few {Moduły} other {Modułów}}", - "no_module": "Brak modułu" + "no_module": "Brak modułu", + "select": "Dodaj moduły" } } diff --git a/packages/i18n/src/locales/pl/navigation.json b/packages/i18n/src/locales/pl/navigation.json index 78d41bf461e..3089b6d815c 100644 --- a/packages/i18n/src/locales/pl/navigation.json +++ b/packages/i18n/src/locales/pl/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Nie znaleziono wyników" + } + } + }, "sidebar": { + "stickies": "Karteczki", + "your_work": "Twoja praca", "projects": "Projekty", "pages": "Strony", "new_work_item": "Nowy element pracy", "home": "Strona główna", - "your_work": "Twoja praca", "inbox": "Skrzynka odbiorcza", "workspace": "Przestrzeń robocza", "views": "Widoki", @@ -21,14 +29,6 @@ "epics": "Epiki", "upgrade_plan": "Apgrejduj plan", "plane_pro": "Plejn Pro", - "business": "Biznes", - "recurring_work_items": "Elementy pracy cykliczne" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Nie znaleziono wyników" - } - } + "business": "Biznes" } } diff --git a/packages/i18n/src/locales/pl/page.json b/packages/i18n/src/locales/pl/page.json index aa536c074db..676a197ab11 100644 --- a/packages/i18n/src/locales/pl/page.json +++ b/packages/i18n/src/locales/pl/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Połącz strony", - "show_wiki_pages": "Pokaż strony wiki", - "link_pages_to": "Połącz strony do", - "linked_pages": "Połączone strony", - "no_description": "Ta strona jest pusta. Napisz coś tutaj i zobacz to jako ten placeholder", - "toasts": { - "link": { - "success": { - "title": "Strony zaktualizowane", - "message": "Strony zaktualizowane pomyślnie" - }, - "error": { - "title": "Strony nie zaktualizowane", - "message": "Nie udało się zaktualizować stron." - } - }, - "remove": { - "success": { - "title": "Strona usunięta", - "message": "Strona została pomyślnie usunięta" - }, - "error": { - "title": "Strona nie usunięta", - "message": "Nie udało się usunąć strony." - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Brakuje obrazów", "description": "Dodaj obrazy, aby je tutaj zobaczyć." } + }, + "comments": { + "label": "Komentarze", + "empty_state": { + "title": "Brak komentarzy", + "description": "Dodaj komentarze, aby je tutaj zobaczyć." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Nazwa karteczki nie może być dłuższa niż 100 znaków.", + "already_exists": "Istnieje już karteczka bez opisu" + }, + "created": { + "title": "Karteczka utworzona", + "message": "Karteczka została pomyślnie utworzona" + }, + "not_created": { + "title": "Karteczka nie utworzona", + "message": "Nie udało się utworzyć karteczki" + }, + "updated": { + "title": "Karteczka zaktualizowana", + "message": "Karteczka została pomyślnie zaktualizowana" + }, + "not_updated": { + "title": "Karteczka nie zaktualizowana", + "message": "Nie udało się zaktualizować karteczki" + }, + "removed": { + "title": "Karteczka usunięta", + "message": "Karteczka została pomyślnie usunięta" + }, + "not_removed": { + "title": "Karteczka nie usunięta", + "message": "Nie udało się usunąć karteczki" } }, "open_button": "Otwórz panel nawigacji", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Przenieś", + "loading": "Przenoszenie" + }, + "cannot_move_to_teamspace": "Prywatne i udostępnione strony nie mogą być przenoszone do teamspace.", "placeholders": { + "workspace_to_all": "Szukaj projektów i teamspejsów", + "workspace_to_project": "Szukaj projektów", + "project_to_all": "Szukaj projektów i teamspejsów", + "project_to_project": "Szukaj projektów", "project_to_all_with_wiki": "Szukaj kolekcji wiki, projektów i przestrzeni zespołowych", "project_to_project_with_wiki": "Szukaj kolekcji wiki i projektów" }, "toasts": { + "success": { + "title": "Sukces!", + "message": "Strona przeniesiona pomyślnie." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się przenieść strony. Spróbuj ponownie później." + }, "collection_error": { "title": "Przeniesiono do wiki", "message": "Strona została przeniesiona do wiki, ale nie udało się dodać jej do wybranej kolekcji. Pozostaje w General." diff --git a/packages/i18n/src/locales/pl/project-settings.json b/packages/i18n/src/locales/pl/project-settings.json index e2a62ebd298..302ec78979b 100644 --- a/packages/i18n/src/locales/pl/project-settings.json +++ b/packages/i18n/src/locales/pl/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Członkowie", "project_lead": "Lider projektu", + "project_lead_description": "Wybierz lidera projektu.", "default_assignee": "Domyślnie przypisany", + "default_assignee_description": "Wybierz domyślnego przypisanego do projektu.", + "project_subscribers": "Subskrybenci projektu", + "project_subscribers_description": "Wybierz członków, którzy będą otrzymywać powiadomienia dotyczące tego projektu.", "guest_super_permissions": { "title": "Nadaj gościom dostęp do wszystkich elementów:", "sub_heading": "Goście zobaczą wszystkie elementy w projekcie." @@ -30,13 +34,11 @@ "title": "Zaproś członków", "sub_heading": "Zaproś członków do projektu.", "select_co_worker": "Wybierz współpracownika" - }, - "project_lead_description": "Wybierz lidera projektu.", - "default_assignee_description": "Wybierz domyślnego przypisanego do projektu.", - "project_subscribers": "Subskrybenci projektu", - "project_subscribers_description": "Wybierz członków, którzy będą otrzymywać powiadomienia dotyczące tego projektu." + } }, "states": { + "heading": "Stany", + "description": "Definiuj i dostosowuj stany przepływu pracy, aby śledzić postęp elementów pracy.", "describe_this_state_for_your_members": "Opisz ten stan członkom projektu.", "empty_state": { "title": "Brak stanów w grupie {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etykiety", + "description": "Twórz niestandardowe etykiety, aby kategoryzować i organizować swoje elementy pracy", "label_title": "Nazwa etykiety", "label_title_is_required": "Nazwa etykiety jest wymagana", "label_max_char": "Nazwa etykiety nie może mieć więcej niż 255 znaków", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Szacunki", + "description": "Skonfiguruj systemy szacowania, aby śledzić i komunikować nakład pracy wymagany dla każdego elementu pracy.", "label": "Szacunki", "title": "Włącz szacunki dla mojego projektu", - "description": "Pomagają w komunikacji o złożoności i obciążeniu zespołu.", + "enable_description": "Pomagają w komunikacji o złożoności i obciążeniu zespołu.", "no_estimate": "Bez szacunku", "new": "Nowy system szacowania", "create": { @@ -112,6 +118,16 @@ "title": "Nie udało się przestawić szacunków", "message": "Nie mogliśmy przestawić szacunków, spróbuj ponownie" } + }, + "switch": { + "success": { + "title": "System szacowania utworzony", + "message": "Utworzono i włączono pomyślnie" + }, + "error": { + "title": "Błąd", + "message": "Coś poszło nie tak" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatyzacja", + "heading": "Automatyzacje", + "description": "Skonfiguruj automatyczne akcje, aby usprawnić przepływ zarządzania projektem i zmniejszyć liczbę zadań ręcznych.", "auto-archive": { "title": "Automatyczna archiwizacja zamkniętych elementów", "description": "Plane będzie automatycznie archiwizował elementy, które zostały ukończone lub anulowane.", @@ -194,90 +212,116 @@ "description": "Skonfiguruj GitHub i inne integracje, aby synchronizować elementy pracy projektu." } }, - "cycles": { - "auto_schedule": { - "heading": "Automatyczne planowanie cykli", - "description": "Utrzymuj cykle w ruchu bez ręcznej konfiguracji.", - "tooltip": "Automatycznie twórz nowe cykle na podstawie wybranego harmonogramu.", - "edit_button": "Edytuj", - "form": { - "cycle_title": { - "label": "Tytuł cyklu", - "placeholder": "Tytuł", - "tooltip": "Tytuł zostanie uzupełniony o numery dla kolejnych cykli. Na przykład: Projekt - 1/2/3", - "validation": { - "required": "Tytuł cyklu jest wymagany", - "max_length": "Tytuł nie może przekraczać 255 znaków" - } - }, - "cycle_duration": { - "label": "Czas trwania cyklu", - "unit": "Tygodnie", - "validation": { - "required": "Czas trwania cyklu jest wymagany", - "min": "Czas trwania cyklu musi wynosić co najmniej 1 tydzień", - "max": "Czas trwania cyklu nie może przekraczać 30 tygodni", - "positive": "Czas trwania cyklu musi być dodatni" - } - }, - "cooldown_period": { - "label": "Okres ochłodzenia", - "unit": "dni", - "tooltip": "Przerwa między cyklami przed rozpoczęciem następnego.", - "validation": { - "required": "Okres ochłodzenia jest wymagany", - "negative": "Okres ochłodzenia nie może być ujemny" - } - }, - "start_date": { - "label": "Dzień rozpoczęcia cyklu", - "validation": { - "required": "Data rozpoczęcia jest wymagana", - "past": "Data rozpoczęcia nie może być w przeszłości" - } + "workflows": { + "toggle": { + "title": "Włącz przepływy pracy", + "description": "Ustaw przepływy pracy, aby kontrolować przemieszczanie się elementów pracy", + "no_states_tooltip": "Do przepływu pracy nie dodano żadnych stanów.", + "no_work_item_types_tooltip": "Do przepływu pracy nie dodano żadnych typów elementów pracy.", + "no_states_or_work_item_types_tooltip": "Do przepływu pracy nie dodano żadnych stanów ani typów elementów pracy.", + "toast": { + "loading": { + "enabling": "Włączanie przepływów pracy", + "disabling": "Wyłączanie przepływów pracy" }, - "number_of_cycles": { - "label": "Liczba przyszłych cykli", - "validation": { - "required": "Liczba cykli jest wymagana", - "min": "Wymagany jest co najmniej 1 cykl", - "max": "Nie można zaplanować więcej niż 3 cykle" - } + "success": { + "title": "Sukces!", + "message": "Przepływy pracy włączono pomyślnie." }, - "auto_rollover": { - "label": "Automatyczne przenoszenie elementów pracy", - "tooltip": "W dniu zakończenia cyklu przenieś wszystkie niedokończone elementy pracy do następnego cyklu." + "error": { + "title": "Błąd!", + "message": "Nie udało się włączyć przepływów pracy. Spróbuj ponownie." + } + } + }, + "heading": "Przepływy pracy", + "description": "Automatyzuj przejścia elementów pracy i ustaw reguły kontrolujące, jak zadania przechodzą przez potok projektu.", + "add_button": "Dodaj nowy przepływ pracy", + "search": "Szukaj przepływów pracy", + "detail": { + "define": "Zdefiniuj przepływ pracy", + "add_states": "Dodaj stany", + "unmapped_states": { + "title": "Wykryto niezmapowane stany", + "description": "Niektóre elementy pracy dla wybranych typów znajdują się obecnie w stanach, które nie istnieją w tym przepływie pracy.", + "note": "Jeśli włączysz ten przepływ pracy, te elementy zostaną automatycznie przeniesione do stanu początkowego tego przepływu pracy.", + "label": "Brakujące stany", + "tooltip": "Niektóre elementy pracy znajdują się w stanach, które nie są zmapowane do tego przepływu pracy. Otwórz przepływ pracy, aby sprawdzić." + } + }, + "select_states": { + "empty_state": { + "title": "Wszystkie stany są używane", + "description": "Wszystkie zdefiniowane stany dla tego projektu są już obecne w Twoim obecnym przepływie pracy." + } + }, + "default_footer": { + "fallback_message": "Ten przepływ pracy stosuje się do każdego typu elementu pracy, który nie jest przypisany do przepływu pracy." + }, + "create": { + "heading": "Utwórz nowy przepływ pracy", + "name": { + "placeholder": "Dodaj unikalną nazwę", + "validation": { + "max_length": "Nazwa musi mieć mniej niż 255 znaków", + "required": "Nazwa jest wymagana", + "invalid": "Nazwa może zawierać tylko litery, cyfry, spacje, myślniki i apostrofy" } }, - "toast": { - "toggle": { - "loading_enable": "Włączanie automatycznego planowania cykli", - "loading_disable": "Wyłączanie automatycznego planowania cykli", - "success": { - "title": "Sukces!", - "message": "Automatyczne planowanie cykli zostało pomyślnie przełączone." - }, - "error": { - "title": "Błąd!", - "message": "Nie udało się przełączyć automatycznego planowania cykli." - } - }, - "save": { - "loading": "Zapisywanie konfiguracji automatycznego planowania cykli", - "success": { - "title": "Sukces!", - "message_create": "Konfiguracja automatycznego planowania cykli została pomyślnie zapisana.", - "message_update": "Konfiguracja automatycznego planowania cykli została pomyślnie zaktualizowana." - }, - "error": { - "title": "Błąd!", - "message_create": "Nie udało się zapisać konfiguracji automatycznego planowania cykli.", - "message_update": "Nie udało się zaktualizować konfiguracji automatycznego planowania cykli." - } + "description": { + "placeholder": "Dodaj krótki opis", + "validation": { + "invalid": "Opis może zawierać tylko litery, cyfry, spacje, myślniki i apostrofy" } + }, + "work_item_type": { + "label": "Typ elementu pracy" + }, + "success": { + "title": "Sukces!", + "message": "Przepływ pracy utworzono pomyślnie." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się utworzyć przepływu pracy. Spróbuj ponownie." + } + }, + "update": { + "success": { + "title": "Sukces!", + "message": "Przepływ pracy zaktualizowano pomyślnie." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się zaktualizować przepływu pracy. Spróbuj ponownie." + } + }, + "delete": { + "loading": "Usuwanie przepływu pracy", + "success": { + "title": "Sukces!", + "message": "Przepływ pracy usunięto pomyślnie." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się usunąć przepływu pracy. Spróbuj ponownie." + } + }, + "add_states": { + "success": { + "title": "Sukces!", + "message": "Stany dodano pomyślnie." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się dodać stanów. Spróbuj ponownie." } } }, + "work_item_types": { + "heading": "Typy elementów pracy", + "description": "Twórz i dostosowuj różne typy elementów pracy z unikalnymi właściwościami" + }, "features": { "cycles": { "title": "Cykle", @@ -385,6 +429,98 @@ "success": "Funkcja projektu zaktualizowana pomyślnie.", "error": "Coś poszło nie tak podczas aktualizacji funkcji projektu. Spróbuj ponownie." } + }, + "project_updates": { + "heading": "Aktualizacje projektu", + "description": "Skonsolidowane śledzenie i monitorowanie postępu dla tego projektu" + }, + "templates": { + "heading": "Szablony", + "description": "Zaoszczędź 80% czasu poświęcanego na tworzenie projektów, elementów pracy i stron, gdy używasz szablonów." + }, + "cycles": { + "auto_schedule": { + "heading": "Automatyczne planowanie cykli", + "description": "Utrzymuj cykle w ruchu bez ręcznej konfiguracji.", + "tooltip": "Automatycznie twórz nowe cykle na podstawie wybranego harmonogramu.", + "edit_button": "Edytuj", + "form": { + "cycle_title": { + "label": "Tytuł cyklu", + "placeholder": "Tytuł", + "tooltip": "Tytuł zostanie uzupełniony o numery dla kolejnych cykli. Na przykład: Projekt - 1/2/3", + "validation": { + "required": "Tytuł cyklu jest wymagany", + "max_length": "Tytuł nie może przekraczać 255 znaków" + } + }, + "cycle_duration": { + "label": "Czas trwania cyklu", + "unit": "Tygodnie", + "validation": { + "required": "Czas trwania cyklu jest wymagany", + "min": "Czas trwania cyklu musi wynosić co najmniej 1 tydzień", + "max": "Czas trwania cyklu nie może przekraczać 30 tygodni", + "positive": "Czas trwania cyklu musi być dodatni" + } + }, + "cooldown_period": { + "label": "Okres ochłodzenia", + "unit": "dni", + "tooltip": "Przerwa między cyklami przed rozpoczęciem następnego.", + "validation": { + "required": "Okres ochłodzenia jest wymagany", + "negative": "Okres ochłodzenia nie może być ujemny" + } + }, + "start_date": { + "label": "Dzień rozpoczęcia cyklu", + "validation": { + "required": "Data rozpoczęcia jest wymagana", + "past": "Data rozpoczęcia nie może być w przeszłości" + } + }, + "number_of_cycles": { + "label": "Liczba przyszłych cykli", + "validation": { + "required": "Liczba cykli jest wymagana", + "min": "Wymagany jest co najmniej 1 cykl", + "max": "Nie można zaplanować więcej niż 3 cykle" + } + }, + "auto_rollover": { + "label": "Automatyczne przenoszenie elementów pracy", + "tooltip": "W dniu zakończenia cyklu przenieś wszystkie niedokończone elementy pracy do następnego cyklu." + } + }, + "toast": { + "toggle": { + "loading_enable": "Włączanie automatycznego planowania cykli", + "loading_disable": "Wyłączanie automatycznego planowania cykli", + "success": { + "title": "Sukces!", + "message": "Automatyczne planowanie cykli zostało pomyślnie przełączone." + }, + "error": { + "title": "Błąd!", + "message": "Nie udało się przełączyć automatycznego planowania cykli." + } + }, + "save": { + "loading": "Zapisywanie konfiguracji automatycznego planowania cykli", + "success": { + "title": "Sukces!", + "message_create": "Konfiguracja automatycznego planowania cykli została pomyślnie zapisana.", + "message_update": "Konfiguracja automatycznego planowania cykli została pomyślnie zaktualizowana." + }, + "error": { + "title": "Błąd!", + "message_create": "Nie udało się zapisać konfiguracji automatycznego planowania cykli.", + "message_update": "Nie udało się zaktualizować konfiguracji automatycznego planowania cykli." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/pl/project.json b/packages/i18n/src/locales/pl/project.json index 84c343e28c7..6a3dc76f7cf 100644 --- a/packages/i18n/src/locales/pl/project.json +++ b/packages/i18n/src/locales/pl/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Zapisuj filtry jako widoki.", + "description": "Widoki to zapisane filtry zapewniające łatwy dostęp. Udostępnij je zespołowi.", + "primary_button": { + "text": "Utwórz pierwszy widok", + "comic": { + "title": "Widoki działają z właściwościami elementów pracy.", + "description": "Utwórz widok z żądanymi filtrami." + } + }, + "filter": { + "title": "Brak pasujących widoków", + "description": "Żadne widoki nie pasują do kryteriów wyszukiwania.\n Utwórz nowy widok." + } + }, + "no_archived_issues": { + "title": "Brak zarchiwizowanych elementów pracy", + "description": "Ręcznie lub przez automatyzację możesz archiwizować elementy pracy, które są ukończone lub anulowane. Znajdziesz je tutaj po zarchiwizowaniu.", + "primary_button": { + "text": "Ustaw automatyzację" + } + }, + "issues_empty_filter": { + "title": "Nie znaleziono elementów pracy pasujących do zastosowanych filtrów", + "secondary_button": { + "text": "Wyczyść wszystkie filtry" + } + }, + "public": { + "title": "Brak publicznych stron", + "description": "Zobacz strony udostępnione wszystkim w Twoim projekcie tutaj.", + "primary_button": { + "text": "Utwórz pierwszą stronę" + } + }, + "archived": { + "title": "Brak zarchiwizowanych stron", + "description": "Archiwizuj strony, które nie są już na Twoim radarze. Uzyskaj do nich dostęp tutaj, gdy będą potrzebne." + }, + "shared": { + "title": "Brak udostępnionych stron", + "description": "Strony, które inni Ci udostępnili, pojawią się tutaj." + } + }, + "delete_view": { + "title": "Czy na pewno chcesz usunąć ten widok?", + "content": "Jeśli potwierdzisz, wszystkie opcje sortowania, filtrowania i wyświetlania + układ, który wybrałeś dla tego widoku, zostaną trwale usunięte bez możliwości przywrócenia." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Zapisuj filtry jako widoki.", - "description": "Widoki to zapisane filtry zapewniające łatwy dostęp. Udostępnij je zespołowi.", - "primary_button": { - "text": "Utwórz pierwszy widok", - "comic": { - "title": "Widoki działają z właściwościami elementów pracy.", - "description": "Utwórz widok z żądanymi filtrami." - } - } - }, - "filter": { - "title": "Brak pasujących widoków", - "description": "Utwórz nowy widok." - } - }, - "delete_view": { - "title": "Czy na pewno chcesz usunąć ten widok?", - "content": "Jeśli potwierdzisz, wszystkie opcje sortowania, filtrowania i wyświetlania + układ, który wybrałeś dla tego widoku, zostaną trwale usunięte bez możliwości przywrócenia." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Ręcznie" } }, + "project_members": { + "full_name": "Imię i nazwisko", + "display_name": "Nazwa wyświetlana", + "email": "E-mail", + "joining_date": "Data dołączenia", + "role": "Rola" + }, "project": { "members_import": { "title": "Importuj członków z CSV", diff --git a/packages/i18n/src/locales/pl/settings.json b/packages/i18n/src/locales/pl/settings.json index 260fcee8f66..a39cbe55ffc 100644 --- a/packages/i18n/src/locales/pl/settings.json +++ b/packages/i18n/src/locales/pl/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferencje", + "description": "Dostosuj sposób korzystania z aplikacji do swojego stylu pracy" + }, "notifications": { + "heading": "Powiadomienia e-mail", + "description": "Bądź na bieżąco z subskrybowanymi elementami pracy. Włącz, aby otrzymywać powiadomienia.", "select_default_view": "Wybierz widok domyślny", "compact": "Kompaktowy", "full": "Pełny ekran" + }, + "security": { + "heading": "Bezpieczeństwo" + }, + "api_tokens": { + "title": "Osobiste tokeny dostępu", + "description": "Generuj bezpieczne tokeny API, aby integrować swoje dane z zewnętrznymi systemami i aplikacjami." + }, + "activity": { + "heading": "Aktywność", + "description": "Śledź swoje ostatnie działania i zmiany we wszystkich projektach i elementach pracy." + }, + "connections": { + "title": "Połączenia", + "heading": "Połączenia", + "description": "Zarządzaj ustawieniami połączeń przestrzeni roboczej." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Bezpieczeństwo", "activity": "Aktywność", - "appearance": "Wygląd", + "preferences": "Preferencje", "notifications": "Powiadomienia", + "api-tokens": "Osobiste tokeny dostępu", "connections": "Połączenia" }, "tabs": { diff --git a/packages/i18n/src/locales/pl/template.json b/packages/i18n/src/locales/pl/template.json index 9ffa4054a46..e6b80ad5aad 100644 --- a/packages/i18n/src/locales/pl/template.json +++ b/packages/i18n/src/locales/pl/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Szablony", "description": "Zaoszczędź 80% czasu spędzonego na tworzeniu projektów, elementów pracy i stron, korzystając z szablonów.", + "new_project_template": "Nowy szablon projektu", + "new_work_item_template": "Nowy szablon elementu pracy", + "new_page_template": "Nowy szablon strony", "options": { "project": { "label": "Szablony projektów" @@ -157,6 +160,14 @@ "required": "Przynajmniej jedno słowo kluczowe jest wymagane" } }, + "website": { + "label": "Adres URL strony", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Nieprawidłowy adres URL", + "maxLength": "Adres URL powinien mieć mniej niż 800 znaków" + } + }, "company_name": { "label": "Nazwa firmy", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Nieprawidłowy adres email", - "required": "Adres email obsługi jest wymagany", "maxLength": "Adres email obsługi powinien mieć mniej niż 255 znaków" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Brak etykiet. Utwórz etykiety, aby pomóc zorganizować i filtrować elementy pracy w Twoim projekcie." }, + "no_modules": { + "description": "Brak modułów. Organizuj pracę w podprojekty z dedykowanymi liderami i przypisanymi osobami." + }, "no_work_items": { "description": "Brak elementów pracy. Dodaj jeden, aby lepiej zorganizować swoją pracę." }, diff --git a/packages/i18n/src/locales/pl/tour.json b/packages/i18n/src/locales/pl/tour.json index 371448aeb48..5f45b7e9605 100644 --- a/packages/i18n/src/locales/pl/tour.json +++ b/packages/i18n/src/locales/pl/tour.json @@ -110,6 +110,12 @@ "description": "Element pracy można odłożyć, aby przejrzeć go później. Zostanie przeniesiony na dół listy otwartych zgłoszeń." } }, + "mcp_connectors": { + "step_zero": { + "title": "Przestań przełączać karty. Połącz swój świat.", + "description": "Połącz GitHub, Slack, aby śledzić PR-y i podsumowywać czaty bezpośrednio w Plane AI." + } + }, "navigation": { "modal": { "title": "Nawigacja, na nowo przemyślana", diff --git a/packages/i18n/src/locales/pl/update.json b/packages/i18n/src/locales/pl/update.json index 5d6368f832a..10542b33bf2 100644 --- a/packages/i18n/src/locales/pl/update.json +++ b/packages/i18n/src/locales/pl/update.json @@ -1,23 +1,16 @@ { "updates": { + "progress": { + "title": "Postęp", + "since_last_update": "Od ostatniej aktualizacji", + "comments": "{count, plural, one{# komentarz} other{# komentarze}}" + }, "add_update": "Dodaj aktualizację", "add_update_placeholder": "Dodaj swoją aktualizację tutaj", "empty": { "title": "Nie ma jeszcze aktualizacji", "description": "Możesz tutaj zobaczyć aktualizacje." }, - "delete": { - "title": "Usuń aktualizację", - "confirmation": "Czy na pewno chcesz usunąć tę aktualizację? Ta operacja jest nieodwracalna.", - "success": { - "title": "Aktualizacja została usunięta", - "message": "Aktualizacja została pomyślnie usunięta." - }, - "error": { - "title": "Aktualizacja nie została usunięta", - "message": "Nie udało się usunąć aktualizacji." - } - }, "reaction": { "create": { "success": { @@ -40,11 +33,6 @@ } } }, - "progress": { - "title": "Postęp", - "since_last_update": "Od ostatniej aktualizacji", - "comments": "{count, plural, one{# komentarz} other{# komentarze}}" - }, "create": { "success": { "title": "Aktualizacja została stworzona", @@ -55,6 +43,18 @@ "message": "Nie udało się stworzyć aktualizacji." } }, + "delete": { + "title": "Usuń aktualizację", + "confirmation": "Czy na pewno chcesz usunąć tę aktualizację? Ta operacja jest nieodwracalna.", + "success": { + "title": "Aktualizacja została usunięta", + "message": "Aktualizacja została pomyślnie usunięta." + }, + "error": { + "title": "Aktualizacja nie została usunięta", + "message": "Nie udało się usunąć aktualizacji." + } + }, "update": { "success": { "title": "Aktualizacja została zaktualizowana", diff --git a/packages/i18n/src/locales/pl/wiki.json b/packages/i18n/src/locales/pl/wiki.json index 78ba55ab8e1..6c97339c70d 100644 --- a/packages/i18n/src/locales/pl/wiki.json +++ b/packages/i18n/src/locales/pl/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Nie udało się utworzyć strony lub dodać jej do kolekcji. Spróbuj ponownie.", "collection_link_copied": "Link do kolekcji skopiowano do schowka." } + }, + "wiki": { + "upgrade_flow": { + "title": "Uaktualnij, aby odblokować Wiki", + "description": "Odblokuj publiczne strony, historię wersji, udostępnione strony, współpracę w czasie rzeczywistym oraz strony przestrzeni roboczej dla wiki, dokumentacji firmowej i baz wiedzy dzięki Plane Pro.", + "upgrade_button": { + "text": "Uaktualnij" + }, + "learn_more_button": { + "text": "Dowiedz się więcej" + }, + "download_button": { + "text": "Pobierz dane", + "loading": "Pobieranie" + }, + "tabs": { + "nested_pages": "Zagnieżdżone strony", + "add_embeds": "Dodaj osadzenia", + "publish_pages": "Publikuj strony", + "comments": "Komentarze" + } + }, + "nested_pages_download_banner": { + "title": "Zagnieżdżone strony wymagają planu płatnego. Uaktualnij, aby odblokować." + } } } diff --git a/packages/i18n/src/locales/pl/work-item-type.json b/packages/i18n/src/locales/pl/work-item-type.json index f8160d15330..1772c8b529e 100644 --- a/packages/i18n/src/locales/pl/work-item-type.json +++ b/packages/i18n/src/locales/pl/work-item-type.json @@ -3,11 +3,25 @@ "label": "Typy Elementów Pracy", "label_lowercase": "typy elementów pracy", "settings": { - "title": "Typy Elementów Pracy", + "description": "Dostosuj i dodaj własne właściwości, aby dopasować do potrzeb zespołu.", + "cant_delete_default_message": "Nie można usunąć tego typu elementu pracy, ponieważ jest on ustawiony jako domyślny dla tego projektu.", + "set_as_default": "Ustaw jako domyślny", + "cant_set_default_inactive_message": "Aktywuj ten typ przed ustawieniem go jako domyślny", + "set_default_confirmation": { + "title": "Ustaw jako domyślny typ elementu pracy", + "description": "Ustawienie {name} jako domyślnego zaimportuje go do wszystkich projektów w tym obszarze roboczym. Wszystkie nowe elementy pracy będą domyślnie używać tego typu.", + "confirm_button": "Ustaw jako domyślny" + }, "properties": { - "title": "Własne właściwości", + "title": "Właściwości", + "description": "Twórz i dostosowuj właściwości.", "tooltip": "Każdy typ elementu pracy posiada domyślny zestaw właściwości, takich jak Tytuł, Opis, Przypisany, Stan, Priorytet, Data rozpoczęcia, Termin zakończenia, Moduł, Cykl itp. Możesz również dostosować i dodać własne właściwości, aby dopasować je do potrzeb Twojego zespołu.", "add_button": "Dodaj nową właściwość", + "project": { + "add_button": { + "import_from_workspace": "Importuj z przestrzeni roboczej" + } + }, "dropdown": { "label": "Typ właściwości", "placeholder": "Wybierz typ" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Utwórz nową niestandardową właściwość", + "update": "Zaktualizuj niestandardową właściwość" + }, "form": { "display_name": { "placeholder": "Tytuł" @@ -213,9 +231,50 @@ "description": "Nowe właściwości, które dodasz dla tego typu elementu pracy, pojawią się tutaj." } }, + "types": { + "title": "Typy", + "description": "Twórz i dostosowuj typy elementów pracy z właściwościami.", + "sort_options": { + "project_count": "Liczba projektów, w których uczestniczy" + }, + "filter_options": { + "show_active": "Pokaż aktywne", + "show_inactive": "Pokaż nieaktywne" + }, + "project": { + "add_button": { + "create_new": "Utwórz nowy", + "import_from_workspace": "Importuj z przestrzeni roboczej" + }, + "banner": { + "with_access": "Włącz typy elementów pracy, aby importować typy z poziomu przestrzeni roboczej", + "without_access": "Typy elementów pracy są wyłączone. Skontaktuj się z administratorem przestrzeni roboczej, aby je włączyć w ustawieniach przestrzeni roboczej." + } + } + }, + "linked_properties": { + "title": "Niestandardowe właściwości", + "add_button": "Dodaj właściwości", + "modal": { + "title": "Dodaj właściwości", + "empty": { + "title": "Brak dostępnych właściwości", + "description": "Wszystkie właściwości zostały już powiązane z tym typem." + } + }, + "unlink_confirmation": { + "title": "Odłącz właściwość", + "description": "Odłączenie tej właściwości trwale usunie wszystkie jej wartości z każdego elementu pracy używającego tego typu. Tej akcji nie można cofnąć.", + "input_label": "Wpisz", + "input_label_suffix": "aby kontynuować:", + "confirm": "Odłącz właściwość", + "loading": "Odłączanie" + } + }, "item_delete_confirmation": { "title": "Usuń ten typ", "description": "Usunięcie typów może prowadzić do utraty istniejących danych.", + "can_disable_warning": "Czy chcesz zamiast tego wyłączyć ten typ?", "primary_button": "Tak, usuń to", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Nie można usunąć domyślnego typu elementu pracy", "cannot_delete_work_item_type_with_associated_work_items": "Nie można usunąć typu elementu pracy z powiązanymi elementami pracy" - }, - "can_disable_warning": "Czy chcesz zamiast tego wyłączyć ten typ?" - }, - "cant_delete_default_message": "Nie można usunąć tego typu elementu pracy, ponieważ jest on ustawiony jako domyślny dla tego projektu.", - "set_as_default": "Ustaw jako domyślny", - "cant_set_default_inactive_message": "Aktywuj ten typ przed ustawieniem go jako domyślny", - "set_default_confirmation": { - "title": "Ustaw jako domyślny typ elementu pracy", - "description": "Ustawienie {name} jako domyślnego zaimportuje go do wszystkich projektów w tym obszarze roboczym. Wszystkie nowe elementy pracy będą domyślnie używać tego typu.", - "confirm_button": "Ustaw jako domyślny" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Błąd!", "message": { + "default": "Nie udało się utworzyć typu elementu pracy. Spróbuj ponownie!", "conflict": "Typ {name} już istnieje. Wybierz inną nazwę." } } @@ -269,6 +320,7 @@ "error": { "title": "Błąd!", "message": { + "default": "Nie udało się zaktualizować typu elementu pracy. Spróbuj ponownie!", "conflict": "Typ {name} już istnieje. Wybierz inną nazwę." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Błąd walidacji!", + "title": "Zapisanie usunie istniejące powiązania", "content": { "intro": "Typ elementu roboczego {workItemTypeName} obejmuje:", - "parent_items": "{count, plural, one {element nadrzędny} few {elementy nadrzędne} other {elementów nadrzędnych}}", + "parent_items": "{count, plural, one {Zostanie usunięte # powiązanie nadrzędne} few {Zostaną usunięte # powiązania nadrzędne} other {Zostanie usuniętych # powiązań nadrzędnych}}.", "child_items": "{count, plural, one {podelement} few {podelementy} other {podelementów}}", "parent_line_suffix_when_also_children": ", oraz ", "footer": "Ta zmiana usunie relacje nadrzędne i podrzędne z istniejących elementów roboczych typu {workItemTypeName}." }, "confirm_input": { - "label": "Wpisz „Potwierdź”, aby kontynuować.", - "placeholder": "Potwierdź" + "label": "Wpisz „potwierdź”, aby kontynuować.", + "placeholder": "potwierdź" }, "error_toast": { "title": "Błąd!", - "message": "Nie udało się zerwać hierarchii. Spróbuj ponownie." + "message": "Nie udało się odłączyć powiązań i zapisać. Spróbuj ponownie." }, "confirm_button": { - "loading": "Stosowanie", - "default": "Zastosuj i odłącz" + "loading": "Zapisywanie", + "default": "Zapisz mimo to" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/pl/work-item.json b/packages/i18n/src/locales/pl/work-item.json index 1e3f70e0357..f9c6a284957 100644 --- a/packages/i18n/src/locales/pl/work-item.json +++ b/packages/i18n/src/locales/pl/work-item.json @@ -20,6 +20,7 @@ "due_date": "Dodaj termin", "parent": "Dodaj element nadrzędny", "sub_issue": "Dodaj podrzędny element pracy", + "dependency": "Dodaj zależność", "relation": "Dodaj relację", "link": "Dodaj link", "existing": "Dodaj istniejący element pracy" @@ -110,6 +111,43 @@ "copy_link": { "success": "Link do komentarza skopiowany do schowka", "error": "Błąd podczas kopiowania linka do komentarza. Spróbuj ponownie później." + }, + "replies": { + "create": { + "submit_button": "Dodaj odpowiedź", + "placeholder": "Dodaj odpowiedź" + }, + "toast": { + "fetch": { + "error": { + "message": "Nie udało się pobrać odpowiedzi" + } + }, + "create": { + "success": { + "message": "Odpowiedź utworzono pomyślnie" + }, + "error": { + "message": "Nie udało się utworzyć odpowiedzi" + } + }, + "update": { + "success": { + "message": "Odpowiedź zaktualizowano pomyślnie" + }, + "error": { + "message": "Nie udało się zaktualizować odpowiedzi" + } + }, + "delete": { + "success": { + "message": "Odpowiedź usunięto pomyślnie" + }, + "error": { + "message": "Nie udało się usunąć odpowiedzi" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Odznacz wszystko" }, "open_in_full_screen": "Otwórz element pracy na pełnym ekranie", + "duplicate": { + "modal": { + "title": "Utwórz kopię w innym projekcie", + "description1": "Tworzy to kopię elementu pracy.", + "description2": "Podczas duplikowania wszystkie dane właściwości zostaną usunięte.", + "placeholder": "Wybierz projekt" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Element pracy zduplikowano pomyślnie" + }, + "error": { + "message": "Nie udało się zduplikować elementu pracy" + } + } + }, + "pages": { + "link_pages": "Połącz strony", + "show_wiki_pages": "Pokaż strony Wiki", + "link_pages_to": "Połącz strony z", + "linked_pages": "Połączone strony", + "no_description": "To pusta strona. Napisz coś wewnątrz, a pojawi się tutaj podobnie jak ten placeholder", + "toasts": { + "link": { + "success": { + "title": "Strony zaktualizowane", + "message": "Strony zaktualizowano pomyślnie" + }, + "error": { + "title": "Aktualizacja stron nie powiodła się", + "message": "Aktualizacja stron nie powiodła się" + } + }, + "remove": { + "success": { + "title": "Strona usunięta", + "message": "Strona usunięta pomyślnie" + }, + "error": { + "title": "Usunięcie strony nie powiodło się", + "message": "Usunięcie strony nie powiodło się" + } + } + } + }, "vote": { "click_to_upvote": "Kliknij, aby zagłosować za", "click_to_downvote": "Kliknij, aby zagłosować przeciw", @@ -241,54 +326,6 @@ "title": "Nie można zaktualizować elementów pracy", "message": "Zmiana stanu nie jest dozwolona dla niektórych elementów pracy. Upewnij się, że zmiana stanu jest dozwolona." } - }, - "workflows": { - "toggle": { - "title": "Włącz workflowy", - "description": "Skonfiguruj workflowy, aby kontrolować przepływ elementów pracy", - "no_states_tooltip": "Do workflowu nie dodano żadnych stanów.", - "toast": { - "loading": { - "enabling": "Włączanie workflowów", - "disabling": "Wyłączanie workflowów" - }, - "success": { - "title": "Sukces!", - "message": "Workflowy zostały pomyślnie włączone." - }, - "error": { - "title": "Błąd!", - "message": "Nie udało się włączyć workflowów. Spróbuj ponownie." - } - } - }, - "heading": "Workflowy", - "description": "Zautomatyzuj przejścia elementów pracy i ustaw reguły kontrolujące, jak zadania przemieszczają się przez pipeline projektu.", - "add_button": "Dodaj nowy workflow", - "search": "Szukaj workflowów", - "detail": { - "define": "Zdefiniuj workflow", - "add_states": "Dodaj stany", - "unmapped_states": { - "title": "Wykryto nieprzypisane stany", - "description": "Niektóre elementy pracy wybranych typów znajdują się obecnie w stanach, które nie istnieją w tym workflowie.", - "note": "Jeśli włączysz ten workflow, te elementy zostaną automatycznie przeniesione do początkowego stanu tego workflowu.", - "label": "Brakujące stany", - "tooltip": "Niektóre elementy pracy znajdują się w stanach, które nie są przypisane do tego workflowu. Otwórz workflow, aby go sprawdzić." - } - }, - "select_states": { - "empty_state": { - "title": "Wszystkie stany są w użyciu", - "description": "Wszystkie stany zdefiniowane dla tego projektu są już obecne w bieżącym workflowie." - } - }, - "default_footer": { - "fallback_message": "Ten workflow dotyczy każdego typu elementu pracy, który nie jest przypisany do żadnego workflowu." - }, - "create": { - "heading": "Utwórz nowy workflow" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/pl/workspace-settings.json b/packages/i18n/src/locales/pl/workspace-settings.json index 96a50af5bda..f91303ea531 100644 --- a/packages/i18n/src/locales/pl/workspace-settings.json +++ b/packages/i18n/src/locales/pl/workspace-settings.json @@ -34,7 +34,8 @@ "max_length": "Nazwa przestrzeni nie może przekraczać 80 znaków" }, "company_size": { - "required": "Rozmiar firmy jest wymagany" + "required": "Rozmiar firmy jest wymagany", + "select_a_range": "Wybierz rozmiar organizacji" } } }, @@ -65,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Rozliczenia i plany", + "description": "Wybierz plan, zarządzaj subskrypcjami i łatwo dokonaj uaktualnienia w miarę rozwoju Twoich potrzeb.", "title": "Rozliczenia i plany", "current_plan": "Obecny plan", "free_plan": "Używasz bezpłatnego planu", "view_plans": "Wyświetl plany" }, "exports": { + "heading": "Eksporty", + "description": "Eksportuj dane projektu w różnych formatach i uzyskaj dostęp do historii eksportów z linkami do pobrania.", "title": "Eksporty", "exporting": "Eksportowanie", "previous_exports": "Poprzednie eksporty", "export_separate_files": "Eksportuj dane do oddzielnych plików", + "exporting_projects": "Eksportowanie projektu", + "format": "Format", "filters_info": "Zastosuj filtry, aby wyeksportować określone elementy robocze według Twoich kryteriów.", "modal": { "title": "Eksport do", @@ -91,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooki", + "description": "Automatyzuj powiadomienia do usług zewnętrznych, gdy wystąpią zdarzenia projektowe.", "title": "Webhooki", "add_webhook": "Dodaj webhook", "modal": { @@ -165,14 +174,20 @@ }, "integrations": { "title": "Integracje", + "heading": "Integracje", + "description": "Łącz się z popularnymi narzędziami i usługami, aby synchronizować pracę w całym ekosystemie przepływu pracy.", "page_title": "Pracuj ze swoimi danymi Plane w dostępnych aplikacjach lub we własnych.", "page_description": "Zobacz wszystkie integracje używane przez tę przestrzeń roboczą lub przez Ciebie." }, "imports": { - "title": "Importy" + "title": "Importy", + "heading": "Importy", + "description": "Łącz i importuj dane z istniejących narzędzi do zarządzania projektami, aby usprawnić integrację przepływu pracy." }, "worklogs": { - "title": "Logi pracy" + "title": "Logi pracy", + "heading": "Logi pracy", + "description": "Pobierz logi pracy (karty czasu pracy) dla każdej osoby w dowolnym projekcie." }, "group_syncing": { "title": "Synchronizacja grup", @@ -241,7 +256,10 @@ "description": "Skonfiguruj swoją domenę i włącz logowanie jednokrotne" }, "project_states": { - "title": "Stany projektu" + "title": "Stany projektu", + "heading": "Zobacz przegląd postępu dla wszystkich projektów.", + "description": "Stany projektów to funkcja Plane służąca do śledzenia postępu wszystkich projektów według dowolnej właściwości projektu.", + "go_to_settings": "Przejdź do ustawień" }, "projects": { "title": "Projekty", @@ -251,6 +269,16 @@ "labels": "Etykiety projektu" } }, + "templates": { + "title": "Szablony", + "heading": "Szablony", + "description": "Zaoszczędź 80% czasu poświęcanego na tworzenie projektów, elementów pracy i stron, gdy używasz szablonów." + }, + "relations": { + "title": "Relacje", + "heading": "Relacje", + "description": "Twórz typy relacji i zarządzaj nimi, które łączą elementy pracy w całej przestrzeni roboczej." + }, "cancel_trial": { "title": "Najpierw anuluj swój okres próbny.", "description": "Masz aktywny okres próbny jednego z naszych płatnych planów. Proszę najpierw go anulować, aby kontynuować.", @@ -262,6 +290,7 @@ "cancel_error_message": "Spróbuj ponownie, proszę." }, "applications": { + "internal": "Wewnętrzny", "title": "Aplikacje", "applicationId_copied": "ID aplikacji skopiowane do schowka", "clientId_copied": "ID klienta skopiowane do schowka", @@ -270,10 +299,61 @@ "your_apps": "Twoje aplikacje", "connect": "Połącz", "connected": "Połączono", + "disconnect": "Odłącz", "install": "Zainstaluj", "installed": "Zainstalowano", "configure": "Konfiguruj", "app_available": "Udostępniłeś tę aplikację do użytku z przestrzenią roboczą Plane", + "app_credentials_regenrated": { + "title": "Dane uwierzytelniające aplikacji zostały pomyślnie wygenerowane ponownie", + "description": "Zastąp sekret klienta wszędzie tam, gdzie jest używany. Poprzedni sekret nie jest już ważny." + }, + "app_created": { + "title": "Aplikacja została pomyślnie utworzona", + "description": "Użyj danych uwierzytelniających, aby zainstalować aplikację w przestrzeni roboczej Plane" + }, + "installed_apps": "Zainstalowane aplikacje", + "all_apps": "Wszystkie aplikacje", + "internal_apps": "Aplikacje wewnętrzne", + "app_name_title": "Jak nazwiesz tę aplikację", + "app_description_title": { + "label": "Długi opis", + "placeholder": "Napisz długi opis dla marketplace. Naciśnij '/', aby zobaczyć polecenia." + }, + "authorization_grant_type": { + "title": "Typ połączenia", + "description": "Wybierz, czy Twoja aplikacja ma być zainstalowana raz dla obszaru roboczego, czy pozwolić każdemu użytkownikowi na połączenie własnego konta" + }, + "website": { + "title": "Strona internetowa", + "description": "Link do strony internetowej Twojej aplikacji.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Twórca aplikacji", + "description": "Osoba lub organizacja tworząca aplikację." + }, + "app_maker_error": "Twórca aplikacji jest wymagany", + "setup_url": { + "label": "URL konfiguracji", + "description": "Użytkownicy zostaną przekierowani na ten adres URL po zainstalowaniu aplikacji.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL webhooka", + "description": "Tutaj będziemy wysyłać zdarzenia webhook i aktualizacje z przestrzeni roboczych, w których zainstalowano Twoją aplikację.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Sekret webhooka", + "description": "Sekret używany do weryfikacji przychodzących żądań webhooka.", + "placeholder": "Wprowadź losowy klucz sekretny" + }, + "redirect_uris": { + "label": "URI przekierowań (oddzielone spacją)", + "description": "Użytkownicy zostaną przekierowani na tę ścieżkę po uwierzytelnieniu się w Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Połącz przestrzeń roboczą Plane, aby rozpocząć korzystanie", "client_id_and_secret": "ID i Sekret Klienta", "client_id_and_secret_description": "Skopiuj i zapisz ten klucz sekretny. Nie będziesz mógł zobaczyć tego klucza po kliknięciu Zamknij.", @@ -285,23 +365,13 @@ "slug_already_exists": "Slug już istnieje", "failed_to_create_application": "Nie udało się utworzyć aplikacji", "upload_logo": "Prześlij Logo", - "app_name_title": "Jak nazwiesz tę aplikację", "app_name_error": "Nazwa aplikacji jest wymagana", "app_short_description_title": "Podaj krótki opis tej aplikacji", "app_short_description_error": "Krótki opis aplikacji jest wymagany", - "app_description_title": { - "label": "Długi opis", - "placeholder": "Napisz długi opis dla marketplace. Naciśnij '/', aby zobaczyć polecenia." - }, - "authorization_grant_type": { - "title": "Typ połączenia", - "description": "Wybierz, czy Twoja aplikacja ma być zainstalowana raz dla obszaru roboczego, czy pozwolić każdemu użytkownikowi na połączenie własnego konta" - }, "app_description_error": "Opis aplikacji jest wymagany", "app_slug_title": "Slug aplikacji", "app_slug_error": "Slug aplikacji jest wymagany", - "app_maker_title": "Twórca aplikacji", - "app_maker_error": "Twórca aplikacji jest wymagany", + "invalid_website_error": "Nieprawidłowa strona internetowa", "webhook_url_title": "URL Webhooka", "webhook_url_error": "URL webhooka jest wymagany", "invalid_webhook_url_error": "Nieprawidłowy URL webhooka", @@ -315,6 +385,8 @@ "authorized_javascript_origins_description": "Wprowadź źródła oddzielone spacjami, z których aplikacja będzie mogła wysyłać żądania, np. app.com example.com", "create_app": "Utwórz aplikację", "update_app": "Aktualizuj aplikację", + "build_your_own_app": "Zbuduj własną aplikację", + "edit_app_details": "Edytuj szczegóły aplikacji", "regenerate_client_secret_description": "Wygeneruj ponownie sekret klienta. Po regeneracji możesz skopiować klucz lub pobrać go do pliku CSV.", "regenerate_client_secret": "Wygeneruj ponownie sekret klienta", "regenerate_client_secret_confirm_title": "Czy na pewno chcesz wygenerować ponownie sekret klienta?", @@ -361,7 +433,6 @@ "video_url_title": "URL Filmu", "video_url_error": "URL Filmu jest wymagany", "invalid_video_url_error": "Nieprawidłowy URL Filmu", - "setup_url_title": "URL Konfiguracji", "setup_url_error": "URL Konfiguracji jest wymagany", "invalid_setup_url_error": "Nieprawidłowy URL Konfiguracji", "configuration_url_title": "URL Konfiguracji", @@ -377,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Nieprawidłowy plik lub przekracza limit rozmiaru ({size} MB)", "uploading": "Przesyłanie...", "upload_and_save": "Prześlij i zapisz", - "app_credentials_regenrated": { - "title": "Dane uwierzytelniające aplikacji zostały pomyślnie wygenerowane ponownie", - "description": "Zastąp sekret klienta wszędzie tam, gdzie jest używany. Poprzedni sekret nie jest już ważny." - }, - "app_created": { - "title": "Aplikacja została pomyślnie utworzona", - "description": "Użyj danych uwierzytelniających, aby zainstalować aplikację w przestrzeni roboczej Plane" - }, - "installed_apps": "Zainstalowane aplikacje", - "all_apps": "Wszystkie aplikacje", - "internal_apps": "Aplikacje wewnętrzne", - "website": { - "title": "Strona internetowa", - "description": "Link do strony internetowej Twojej aplikacji.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Twórca aplikacji", - "description": "Osoba lub organizacja tworząca aplikację." - }, - "setup_url": { - "label": "URL konfiguracji", - "description": "Użytkownicy zostaną przekierowani na ten adres URL po zainstalowaniu aplikacji.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL webhooka", - "description": "Tutaj będziemy wysyłać zdarzenia webhook i aktualizacje z przestrzeni roboczych, w których zainstalowano Twoją aplikację.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI przekierowań (oddzielone spacją)", - "description": "Użytkownicy zostaną przekierowani na tę ścieżkę po uwierzytelnieniu się w Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Prośba o instalację", "app_consent_no_access_description": "Aplikacja może być zainstalowana dopiero po tym, jak administrator workspace ją zainstaluje. Skontaktuj się z administratorem workspace, aby kontynuować.", + "app_consent_unapproved_title": "Ta aplikacja nie została jeszcze sprawdzona ani zatwierdzona przez Plane.", + "app_consent_unapproved_description": "Upewnij się, że ufasz tej aplikacji, zanim połączysz ją ze swoją przestrzenią roboczą.", + "go_to_app": "Przejdź do aplikacji", "enable_app_mentions": "Włącz wzmianki o aplikacji", "enable_app_mentions_tooltip": "Po włączeniu tej opcji użytkownicy mogą wspominać lub przypisywać elementy pracy do tej aplikacji.", "scopes": "Zakresy", @@ -432,15 +472,18 @@ "profile": "Dostęp do informacji o profilu użytkownika", "agents": "Dostęp do agentów i wszystkich powiązanych encji", "assets": "Dostęp do zasobów i wszystkich powiązanych encji" - }, - "build_your_own_app": "Zbuduj własną aplikację", - "edit_app_details": "Edytuj szczegóły aplikacji", - "internal": "Wewnętrzny" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Twoja praca staje się inteligentniejsza i szybsza dzięki AI, która jest natywnie połączona z Twoją pracą i bazą wiedzy." + }, + "runners": { + "title": "Plane Runner", + "heading": "Skrypty", + "new_script": "Nowy skrypt", + "description": "Automatyzuj swoje przepływy pracy za pomocą niestandardowych skryptów i reguł automatyzacji." } }, "empty_state": { diff --git a/packages/i18n/src/locales/pl/workspace.json b/packages/i18n/src/locales/pl/workspace.json index 57dd7be53ba..53d57357e86 100644 --- a/packages/i18n/src/locales/pl/workspace.json +++ b/packages/i18n/src/locales/pl/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Zakres i zapotrzebowanie", "custom": "Analizy niestandardowe" }, + "total": "Łączna liczba {entity}", + "started_work_items": "Rozpoczęte {entity}", + "backlog_work_items": "{entity} w backlogu", + "un_started_work_items": "Nierozpoczęte {entity}", + "completed_work_items": "Ukończone {entity}", + "project_insights": "Wgląd w projekt", + "summary_of_projects": "Podsumowanie projektów", + "all_projects": "Wszystkie projekty", + "trend_on_charts": "Trend na wykresach", + "active_projects": "Aktywne projekty", + "customized_insights": "Dostosowane informacje", + "created_vs_resolved": "Utworzone vs Rozwiązane", "empty_state": { - "customized_insights": { - "description": "Przypisane do Ciebie elementy pracy, podzielone według stanu, pojawią się tutaj.", - "title": "Brak danych" + "project_insights": { + "title": "Brak danych", + "description": "Przypisane do Ciebie elementy pracy, podzielone według stanu, pojawią się tutaj." }, "created_vs_resolved": { - "description": "Elementy pracy utworzone i rozwiązane w czasie pojawią się tutaj.", - "title": "Brak danych" + "title": "Brak danych", + "description": "Elementy pracy utworzone i rozwiązane w czasie pojawią się tutaj." }, - "project_insights": { + "customized_insights": { "title": "Brak danych", "description": "Przypisane do Ciebie elementy pracy, podzielone według stanu, pojawią się tutaj." }, @@ -132,29 +144,11 @@ "description": "Analiza trendów przyjęć pojawi się tutaj. Dodaj elementy pracy do przyjęć, aby rozpocząć śledzenie trendów." } }, - "created_vs_resolved": "Utworzone vs Rozwiązane", - "customized_insights": "Dostosowane informacje", - "backlog_work_items": "{entity} w backlogu", - "active_projects": "Aktywne projekty", - "trend_on_charts": "Trend na wykresach", - "all_projects": "Wszystkie projekty", - "summary_of_projects": "Podsumowanie projektów", - "project_insights": "Wgląd w projekt", - "started_work_items": "Rozpoczęte {entity}", - "total_work_items": "Łączna liczba {entity}", - "total_projects": "Łączna liczba projektów", - "total_admins": "Łączna liczba administratorów", - "total_users": "Łączna liczba użytkowników", - "total_intake": "Całkowity dochód", - "un_started_work_items": "Nierozpoczęte {entity}", - "total_guests": "Łączna liczba gości", - "completed_work_items": "Ukończone {entity}", - "total": "Łączna liczba {entity}", + "upgrade_to_plan": "Ulepsz do {plan}, aby odblokować {tab}", + "workitem_resolved_vs_pending": "Rozwiązane vs oczekujące elementy pracy", "projects_by_status": "Projekty według statusu", "active_users": "Aktywni użytkownicy", - "intake_trends": "Trendy przyjęć", - "workitem_resolved_vs_pending": "Rozwiązane vs oczekujące elementy pracy", - "upgrade_to_plan": "Ulepsz do {plan}, aby odblokować {tab}" + "intake_trends": "Trendy przyjęć" }, "workspace_projects": { "label": "{count, plural, one {Projekt} few {Projekty} other {Projektów}}", @@ -318,6 +312,10 @@ "archived": { "title": "Brak zarchiwizowanych stron", "description": "Archiwizuj strony, których nie masz na radarze. Dostęp do nich tutaj, gdy potrzeba." + }, + "shared": { + "title": "Brak udostępnionych stron", + "description": "Strony, które inni Ci udostępnili, pojawią się tutaj." } } }, diff --git a/packages/i18n/src/locales/pt-BR/auth.json b/packages/i18n/src/locales/pt-BR/auth.json index 0ac648b27d0..eff421c1be0 100644 --- a/packages/i18n/src/locales/pt-BR/auth.json +++ b/packages/i18n/src/locales/pt-BR/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "nome@empresa.com", - "errors": { - "required": "Email é obrigatório", - "invalid": "Email inválido" - } - }, - "password": { - "label": "Senha", - "set_password": "Definir senha", - "placeholder": "Digite a senha", - "confirm_password": { - "label": "Confirmar senha", - "placeholder": "Confirmar senha" - }, - "current_password": { - "label": "Senha atual" - }, - "new_password": { - "label": "Nova senha", - "placeholder": "Digite a nova senha" - }, - "change_password": { - "label": { - "default": "Alterar senha", - "submitting": "Alterando senha" - } - }, - "errors": { - "match": "As senhas não coincidem", - "empty": "Por favor digite sua senha", - "length": "A senha deve ter mais de 8 caracteres", - "strength": { - "weak": "Senha fraca", - "strong": "Senha forte" - } - }, - "submit": "Definir senha", - "toast": { - "change_password": { - "success": { - "title": "Sucesso!", - "message": "Senha alterada com sucesso." - }, - "error": { - "title": "Erro!", - "message": "Algo deu errado. Por favor, tente novamente." - } - } - } - }, - "unique_code": { - "label": "Código único", - "placeholder": "123456", - "paste_code": "Cole o código enviado para seu email", - "requesting_new_code": "Solicitando novo código", - "sending_code": "Enviando código" - }, - "already_have_an_account": "Já tem uma conta?", - "login": "Login", - "create_account": "Criar conta", - "new_to_plane": "Novo no Plane?", - "back_to_sign_in": "Voltar ao login", - "resend_in": "Reenviar em {seconds} segundos", - "sign_in_with_unique_code": "Login com código único", - "forgot_password": "Esqueceu sua senha?", - "username": { - "label": "Nome de usuário", - "placeholder": "Digite seu nome de usuário" - } - }, - "sign_up": { - "header": { - "label": "Crie uma conta para começar a gerenciar trabalho com sua equipe.", - "step": { - "email": { - "header": "Cadastro", - "sub_header": "" - }, - "password": { - "header": "Cadastro", - "sub_header": "Cadastre-se usando email e senha." - }, - "unique_code": { - "header": "Cadastro", - "sub_header": "Cadastre-se usando um código único enviado para o email acima." - } - } - }, - "errors": { - "password": { - "strength": "Tente definir uma senha forte para continuar" - } - } - }, - "sign_in": { - "header": { - "label": "Faça login para começar a gerenciar trabalho com sua equipe.", - "step": { - "email": { - "header": "Login ou cadastro", - "sub_header": "" - }, - "password": { - "header": "Login ou cadastro", - "sub_header": "Use seu email e senha para fazer login." - }, - "unique_code": { - "header": "Login ou cadastro", - "sub_header": "Faça login usando um código único enviado para o email acima." - } - } - } - }, - "forgot_password": { - "title": "Redefinir sua senha", - "description": "Digite o email verificado da sua conta e enviaremos um link para redefinir sua senha.", - "email_sent": "Enviamos o link de redefinição para seu email", - "send_reset_link": "Enviar link de redefinição", - "errors": { - "smtp_not_enabled": "Vemos que seu administrador não habilitou SMTP, não poderemos enviar um link de redefinição de senha" - }, - "toast": { - "success": { - "title": "Email enviado", - "message": "Verifique sua caixa de entrada para um link de redefinição de senha. Se não aparecer em alguns minutos, verifique sua pasta de spam." - }, - "error": { - "title": "Erro!", - "message": "Algo deu errado. Por favor, tente novamente." - } - } - }, - "reset_password": { - "title": "Definir nova senha", - "description": "Proteja sua conta com uma senha forte" - }, - "set_password": { - "title": "Proteja sua conta", - "description": "Definir uma senha ajuda você a fazer login com segurança" - }, - "sign_out": { - "toast": { - "error": { - "title": "Erro!", - "message": "Falha ao sair. Por favor, tente novamente." - } - } - }, - "ldap": { - "header": { - "label": "Continuar com {ldapProviderName}", - "sub_header": "Digite suas credenciais {ldapProviderName}" - } - } - }, "sso": { "header": "Identidade", "description": "Configure seu domínio para acessar recursos de segurança, incluindo single sign-on.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "nome@empresa.com", + "errors": { + "required": "Email é obrigatório", + "invalid": "Email inválido" + } + }, + "password": { + "label": "Senha", + "set_password": "Definir senha", + "placeholder": "Digite a senha", + "confirm_password": { + "label": "Confirmar senha", + "placeholder": "Confirmar senha" + }, + "current_password": { + "label": "Senha atual" + }, + "new_password": { + "label": "Nova senha", + "placeholder": "Digite a nova senha" + }, + "change_password": { + "label": { + "default": "Alterar senha", + "submitting": "Alterando senha" + } + }, + "errors": { + "match": "As senhas não coincidem", + "empty": "Por favor digite sua senha", + "length": "A senha deve ter mais de 8 caracteres", + "strength": { + "weak": "Senha fraca", + "strong": "Senha forte" + } + }, + "submit": "Definir senha", + "toast": { + "change_password": { + "success": { + "title": "Sucesso!", + "message": "Senha alterada com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Algo deu errado. Por favor, tente novamente." + } + } + } + }, + "unique_code": { + "label": "Código único", + "placeholder": "123456", + "paste_code": "Cole o código enviado para seu email", + "requesting_new_code": "Solicitando novo código", + "sending_code": "Enviando código" + }, + "already_have_an_account": "Já tem uma conta?", + "login": "Login", + "create_account": "Criar conta", + "new_to_plane": "Novo no Plane?", + "back_to_sign_in": "Voltar ao login", + "resend_in": "Reenviar em {seconds} segundos", + "sign_in_with_unique_code": "Login com código único", + "forgot_password": "Esqueceu sua senha?", + "username": { + "label": "Nome de usuário", + "placeholder": "Digite seu nome de usuário" + } + }, + "sign_up": { + "header": { + "label": "Crie uma conta para começar a gerenciar trabalho com sua equipe.", + "step": { + "email": { + "header": "Cadastro", + "sub_header": "" + }, + "password": { + "header": "Cadastro", + "sub_header": "Cadastre-se usando email e senha." + }, + "unique_code": { + "header": "Cadastro", + "sub_header": "Cadastre-se usando um código único enviado para o email acima." + } + } + }, + "errors": { + "password": { + "strength": "Tente definir uma senha forte para continuar" + } + } + }, + "sign_in": { + "header": { + "label": "Faça login para começar a gerenciar trabalho com sua equipe.", + "step": { + "email": { + "header": "Login ou cadastro", + "sub_header": "" + }, + "password": { + "header": "Login ou cadastro", + "sub_header": "Use seu email e senha para fazer login." + }, + "unique_code": { + "header": "Login ou cadastro", + "sub_header": "Faça login usando um código único enviado para o email acima." + } + } + } + }, + "forgot_password": { + "title": "Redefinir sua senha", + "description": "Digite o email verificado da sua conta e enviaremos um link para redefinir sua senha.", + "email_sent": "Enviamos o link de redefinição para seu email", + "send_reset_link": "Enviar link de redefinição", + "errors": { + "smtp_not_enabled": "Vemos que seu administrador não habilitou SMTP, não poderemos enviar um link de redefinição de senha" + }, + "toast": { + "success": { + "title": "Email enviado", + "message": "Verifique sua caixa de entrada para um link de redefinição de senha. Se não aparecer em alguns minutos, verifique sua pasta de spam." + }, + "error": { + "title": "Erro!", + "message": "Algo deu errado. Por favor, tente novamente." + } + } + }, + "reset_password": { + "title": "Definir nova senha", + "description": "Proteja sua conta com uma senha forte" + }, + "set_password": { + "title": "Proteja sua conta", + "description": "Definir uma senha ajuda você a fazer login com segurança" + }, + "sign_out": { + "toast": { + "error": { + "title": "Erro!", + "message": "Falha ao sair. Por favor, tente novamente." + } + } + }, + "ldap": { + "header": { + "label": "Continuar com {ldapProviderName}", + "sub_header": "Digite suas credenciais {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/pt-BR/automation.json b/packages/i18n/src/locales/pt-BR/automation.json index 6ec1c60468a..3eab73f1589 100644 --- a/packages/i18n/src/locales/pt-BR/automation.json +++ b/packages/i18n/src/locales/pt-BR/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Voltar", "next": "Adicionar ação" + }, + "warning": { + "disabled_trigger_switching": "Você não pode alterar o tipo do gatilho após a criação" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Selecione uma opção", "handler_name": { "add_comment": "Adicionar comentário", - "change_property": "Alterar propriedade" + "change_property": "Alterar propriedade", + "run_script": "Executar Script" }, "configuration": { "label": "Configuração", @@ -89,6 +93,9 @@ "comment_block": { "title": "Adicionar comentário" }, + "run_script_block": { + "title": "Executar script" + }, "change_property_block": { "title": "Alterar propriedade" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Título da automação", + "scope": "Escopo", + "projects": "Projetos", "last_run_on": "Última execução em", "created_on": "Criado em", "last_updated_on": "Última atualização em", @@ -230,6 +239,35 @@ "description": "Automações são uma forma de automatizar tarefas no seu projeto.", "sub_description": "Recupere 80% do seu tempo administrativo quando usar Automações." } + }, + "global_automations": { + "project_select": { + "label": "Selecione os projetos nos quais esta automação será executada", + "all_projects": { + "label": "Todos os projetos", + "description": "A automação será executada para todos os projetos do espaço de trabalho." + }, + "select_projects": { + "label": "Selecionar projetos", + "description": "A automação será executada para os projetos selecionados do espaço de trabalho.", + "placeholder": "Selecionar projetos" + } + }, + "settings": { + "sidebar_label": "Automações", + "title": "Automações", + "description": "Padronize processos em todo o seu espaço de trabalho com automações globais." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Projeto", + "multiple": "Múltiplos", + "all": "Todos" + } + } + } } } } diff --git a/packages/i18n/src/locales/pt-BR/common.json b/packages/i18n/src/locales/pt-BR/common.json index c0a57cdd145..565e85d8739 100644 --- a/packages/i18n/src/locales/pt-BR/common.json +++ b/packages/i18n/src/locales/pt-BR/common.json @@ -17,6 +17,7 @@ "no": "Não", "ok": "OK", "name": "Nome", + "unknown_user": "Usuário desconhecido", "description": "Descrição", "search": "Pesquisar", "add_member": "Adicionar membro", @@ -56,7 +57,8 @@ "no_worklogs": "Nenhum registro de trabalho ainda", "no_history": "Nenhum histórico ainda" }, - "appearance": "Aparência", + "preferences": "Preferências", + "language_and_time": "Idioma e Hora", "notifications": "Notificações", "workspaces": "Espaços de trabalho", "create_workspace": "Criar espaço de trabalho", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Algo deu errado. Por favor, tente novamente.", "load_more": "Carregar mais", "select_or_customize_your_interface_color_scheme": "Selecione ou personalize o esquema de cores da sua interface.", + "timezone_setting": "Configuração atual de fuso horário.", + "language_setting": "Escolha o idioma usado na interface do usuário.", + "settings_moved_to_preferences": "As configurações de Fuso horário e Idioma foram movidas para as preferências.", + "go_to_preferences": "Ir para preferências", "select_the_cursor_motion_style_that_feels_right_for_you": "Selecione o estilo de movimento do cursor que parece certo para você.", "theme": "Tema", "smooth_cursor": "Cursor Suave", @@ -163,6 +169,7 @@ "project_created_successfully": "Projeto criado com sucesso", "project_created_successfully_description": "Projeto criado com sucesso. Agora você pode começar a adicionar itens de trabalho a ele.", "project_name_already_taken": "O nome do projeto já está em uso.", + "project_name_cannot_contain_special_characters": "O nome do projeto não pode conter caracteres especiais.", "project_identifier_already_taken": "O identificador do projeto já está em uso.", "project_cover_image_alt": "Imagem de capa do projeto", "name_is_required": "Nome é obrigatório", @@ -207,6 +214,7 @@ "issues": "Itens de trabalho", "cycles": "Ciclos", "modules": "Módulos", + "pages": "Páginas", "intake": "Admissão", "renew": "Renovar", "preview": "Visualização", @@ -298,6 +306,7 @@ "start_date": "Data de início", "end_date": "Data de término", "due_date": "Data de vencimento", + "target_date": "Data alvo", "estimate": "Estimativa", "change_parent_issue": "Alterar item de trabalho pai", "remove_parent_issue": "Remover item de trabalho pai", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Nova senha deve ser diferente da senha antiga", "edited": "editado", "bot": "robô", + "settings_description": "Gerencie suas preferências de conta, espaço de trabalho e projeto em um só lugar. Alterne entre as abas para configurar facilmente.", + "back_to_workspace": "Voltar ao espaço de trabalho", "upgrade_request": "Peça ao administrador do espaço de trabalho para fazer upgrade.", "copied_to_clipboard": "Copiado para a área de transferência", "copied_to_clipboard_description": "A URL foi copiada com sucesso para a área de transferência", @@ -422,6 +433,9 @@ "modules": "Módulos", "labels": "Etiquetas", "label": "Etiqueta", + "admins": "Administradores", + "users": "Usuários", + "guests": "Convidados", "assignees": "Responsáveis", "assignee": "Responsável", "created_by": "Criado por", @@ -451,6 +465,8 @@ "work_item": "Item de trabalho", "work_items": "Itens de trabalho", "sub_work_item": "Sub-item de trabalho", + "views": "Visualizações", + "pages": "Páginas", "add": "Adicionar", "warning": "Aviso", "updating": "Atualizando", @@ -496,7 +512,7 @@ "workspace_level": "Nível do espaço de trabalho", "order_by": { "label": "Ordenar por", - "manual": "Manual", + "manual": "Manual - Classificação", "last_created": "Último criado", "last_updated": "Último atualizado", "start_date": "Data de início", @@ -532,6 +548,7 @@ "continue": "Continuar", "resend": "Reenviar", "relations": "Relações", + "dependencies": "Dependências", "errors": { "default": { "title": "Erro!", @@ -563,11 +580,27 @@ "quarter": "Trimestre", "press_for_commands": "Pressione '/' para comandos", "click_to_add_description": "Clique para adicionar descrição", + "on_track": "No caminho certo", + "off_track": "Fora do caminho", + "at_risk": "Em risco", + "timeline": "Linha do tempo", + "completion": "Conclusão", + "upcoming": "Próximo", + "completed": "Concluído", + "in_progress": "Em andamento", + "planned": "Planejado", + "paused": "Pausado", "search": { "label": "Buscar", "placeholder": "Digite para buscar", "no_matches_found": "Nenhum resultado encontrado", - "no_matching_results": "Nenhum resultado correspondente" + "no_matching_results": "Nenhum resultado correspondente", + "min_chars": "Digite pelo menos {count} caracteres para buscar", + "error": "Erro ao buscar resultados", + "no_results": { + "title": "Nenhum resultado correspondente", + "description": "Remova os critérios de busca para ver todos os resultados" + } }, "actions": { "edit": "Editar", @@ -584,7 +617,9 @@ "clear_sorting": "Limpar ordenação", "show_weekends": "Mostrar fins de semana", "enable": "Habilitar", - "disable": "Desabilitar" + "disable": "Desabilitar", + "copy_markdown": "Copiar markdown", + "reply": "Responder" }, "name": "Nome", "discard": "Descartar", @@ -597,6 +632,7 @@ "disabled": "Desabilitado", "mandate": "Mandato", "mandatory": "Obrigatório", + "global": "Global", "yes": "Sim", "no": "Não", "please_wait": "Por favor, aguarde", @@ -606,6 +642,7 @@ "or": "ou", "next": "Próximo", "back": "Voltar", + "retry": "Tentar novamente", "cancelling": "Cancelando", "configuring": "Configurando", "clear": "Limpar", @@ -660,31 +697,27 @@ "deactivated_user": "Usuário desativado", "apply": "Aplicar", "applying": "Aplicando", - "users": "Usuários", - "admins": "Administradores", - "guests": "Convidados", - "on_track": "No caminho certo", - "off_track": "Fora do caminho", - "at_risk": "Em risco", - "timeline": "Linha do tempo", - "completion": "Conclusão", - "upcoming": "Próximo", - "completed": "Concluído", - "in_progress": "Em andamento", - "planned": "Planejado", - "paused": "Pausado", + "overview": "Visão geral", "no_of": "Nº de {entity}", "resolved": "Resolvido", + "get_started": "Começar", "worklogs": "Registros de trabalho", "project_updates": "Atualizações do projeto", - "overview": "Visão geral", "workflows": "Fluxos de trabalho", "templates": "Modelos", + "business": "Business", "members_and_teamspaces": "Membros e espaços de equipe", + "recurring_work_items": "Itens de trabalho recorrentes", + "milestones": "Marcos", "open_in_full_screen": "Abrir {page} em tela cheia", "details": "Detalhes", "project_structure": "Estrutura do projeto", - "custom_properties": "Propriedades personalizadas" + "custom_properties": "Propriedades personalizadas", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Eixo X", @@ -790,42 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "O Plane não inicializou. Isso pode ser porque um ou mais serviços do Plane falharam ao iniciar.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Escolha View Logs do setup.sh e logs do Docker para ter certeza." }, + "customize_navigation": "Personalizar navegação", + "personal": "Pessoal", + "accordion_navigation_control": "Navegação lateral em acordeão", + "horizontal_navigation_bar": "Navegação em abas", + "show_limited_projects_on_sidebar": "Mostrar projetos limitados na barra lateral", + "enter_number_of_projects": "Informe o número de projetos", + "pin": "Fixar", + "unpin": "Desafixar", "workspace_dashboards": "Dashboards", "pi_chat": "Chat AI", "in_app": "No aplicativo", "forms": "Formulários", - "choose_workspace_for_integration": "Escolha um espaço de trabalho para conectar esta aplicação", - "integrations_description": "Aplicações que funcionam com Plane devem se conectar a um espaço de trabalho onde você é administrador.", - "create_a_new_workspace": "Criar um novo espaço de trabalho", - "no_workspaces_to_connect": "Nenhum espaço de trabalho para conectar", - "no_workspaces_to_connect_description": "Você precisa criar um espaço de trabalho para poder conectar integrações e templates", - "learn_more_about_workspaces": "Saiba mais sobre espaços de trabalho", + "milestones": "Marcos", + "milestones_description": "Os marcos oferecem uma camada para alinhar os itens de trabalho com datas de conclusão compartilhadas.", "file_upload": { "upload_text": "Clique aqui para fazer upload do arquivo", "drag_drop_text": "Arraste e Solte", "processing": "Processando", - "invalid": "Tipo de arquivo inválido", + "invalid_file_type": "Tipo de arquivo inválido", "missing_fields": "Campos ausentes", "success": "{fileName} Enviado!" }, - "dropdown": { - "add": { - "work_item": "Adicionar novo modelo", - "project": "Adicionar novo modelo" - }, - "label": { - "project": "Escolher um modelo de projeto", - "page": "Escolher a partir do modelo" - }, - "tooltip": { - "work_item": "Escolher um modelo de item de trabalho" - }, - "no_results": { - "work_item": "Nenhum modelo encontrado.", - "project": "Nenhum modelo encontrado." - } - }, - "project_name_cannot_contain_special_characters": "O nome do projeto não pode conter caracteres especiais.", "date": "Data", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/pt-BR/editor.json b/packages/i18n/src/locales/pt-BR/editor.json index c80123ff810..105df382c7e 100644 --- a/packages/i18n/src/locales/pt-BR/editor.json +++ b/packages/i18n/src/locales/pt-BR/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Por favor, insira uma URL válida." } + }, + "ai_block": { + "content": { + "placeholder": "Descreva o conteúdo deste bloco", + "generated_here": "Seu conteúdo de IA será gerado aqui" + }, + "block_types": { + "placeholder": "Selecionar tipo de bloco", + "summarize_page": "Resumir página", + "custom_prompt": "Prompt personalizado" + }, + "actions": { + "discard": "Descartar", + "generate": "Gerar", + "generating": "Gerando", + "rewriting": "Reescrevendo", + "rewrite": "Reescrever", + "use_this": "Usar este", + "refine": "Refinar" + } } } diff --git a/packages/i18n/src/locales/pt-BR/empty-state.json b/packages/i18n/src/locales/pt-BR/empty-state.json index fca64f9a0a8..e9863a4a7d7 100644 --- a/packages/i18n/src/locales/pt-BR/empty-state.json +++ b/packages/i18n/src/locales/pt-BR/empty-state.json @@ -249,10 +249,22 @@ "title": "Acompanhe folhas de ponto para todos os membros", "description": "Registre tempo em itens de trabalho para ver folhas de ponto detalhadas para qualquer membro da equipe em projetos." }, + "group_syncing": { + "title": "Ainda não há mapeamentos de grupos" + }, "template_setting": { "title": "Ainda não há modelos", "description": "Reduza o tempo de configuração criando modelos para projetos, itens de trabalho e páginas — e comece novo trabalho em segundos.", "cta_primary": "Criar modelo" + }, + "workflows": { + "title": "Ainda não há fluxos de trabalho", + "description": "Crie fluxos de trabalho para gerenciar o progresso dos seus itens de trabalho.", + "cta_primary": "Adicionar novo fluxo de trabalho", + "states": { + "title": "Adicionar estados", + "description": "Selecione os estados pelos quais o item de trabalho progride." + } } } } diff --git a/packages/i18n/src/locales/pt-BR/integration.json b/packages/i18n/src/locales/pt-BR/integration.json index 2b6b0ee266d..b094ffabb05 100644 --- a/packages/i18n/src/locales/pt-BR/integration.json +++ b/packages/i18n/src/locales/pt-BR/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Erro do servidor ao carregar estados" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Conecte e sincronize seus repositórios do Bitbucket Data Center com o Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Validar tokens de IdP externos para acesso à API.", @@ -302,6 +306,7 @@ "generic_error": "Ocorreu um erro inesperado ao processar sua solicitação", "connection_not_found": "A conexão solicitada não pôde ser encontrada", "multiple_connections_found": "Várias conexões foram encontradas quando apenas uma era esperada", + "cannot_create_multiple_connections": "Você já conectou sua organização a um espaço de trabalho. Por favor, desconecte a conexão existente antes de conectar uma nova.", "installation_not_found": "A instalação solicitada não pôde ser encontrada", "user_not_found": "O usuário solicitado não pôde ser encontrado", "error_fetching_token": "Falha ao buscar token de autenticação", @@ -315,6 +320,7 @@ "pulling": "Extraindo", "timed_out": "Tempo limite esgotado", "pulled": "Extraído", + "progressing": "Em progresso", "transforming": "Transformando", "transformed": "Transformado", "pushing": "Enviando", diff --git a/packages/i18n/src/locales/pt-BR/module.json b/packages/i18n/src/locales/pt-BR/module.json index 01c1ac0ee00..95032309d19 100644 --- a/packages/i18n/src/locales/pt-BR/module.json +++ b/packages/i18n/src/locales/pt-BR/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Módulo} other {Módulos}}", - "no_module": "Nenhum módulo" + "no_module": "Nenhum módulo", + "select": "Adicionar módulos" } } diff --git a/packages/i18n/src/locales/pt-BR/navigation.json b/packages/i18n/src/locales/pt-BR/navigation.json index 3fd12a19b0d..c2a2d62677b 100644 --- a/packages/i18n/src/locales/pt-BR/navigation.json +++ b/packages/i18n/src/locales/pt-BR/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Nenhum resultado encontrado" + } + } + }, "sidebar": { + "stickies": "Notas adesivas", + "your_work": "Seu trabalho", "projects": "Projetos", "pages": "Páginas", "new_work_item": "Novo item", "home": "Home", - "your_work": "Seu trabalho", "inbox": "Inbox", "workspace": "Workspace", "views": "Visualizações", @@ -21,14 +29,6 @@ "epics": "Épicos", "upgrade_plan": "Atualizar plano", "plane_pro": "Plane Pro", - "business": "Business", - "recurring_work_items": "Itens de trabalho recorrentes" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Nenhum resultado encontrado" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/pt-BR/page.json b/packages/i18n/src/locales/pt-BR/page.json index 5a47c24b44f..d2c827f3543 100644 --- a/packages/i18n/src/locales/pt-BR/page.json +++ b/packages/i18n/src/locales/pt-BR/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Conectar páginas", - "show_wiki_pages": "Mostrar páginas wiki", - "link_pages_to": "Conectar páginas a", - "linked_pages": "Páginas vinculadas", - "no_description": "Esta página está vazia. Escreva algo aqui e veja isso como este espaço reservado", - "toasts": { - "link": { - "success": { - "title": "Páginas atualizadas", - "message": "Páginas atualizadas com sucesso" - }, - "error": { - "title": "Páginas não atualizadas", - "message": "Páginas não puderam ser atualizadas" - } - }, - "remove": { - "success": { - "title": "Página removida", - "message": "Página removida com sucesso" - }, - "error": { - "title": "Página não removida", - "message": "Página não pôde ser removida" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Imagens ausentes", "description": "Adicione imagens para vê-las aqui." } + }, + "comments": { + "label": "Comentários", + "empty_state": { + "title": "Nenhum comentário", + "description": "Adicione comentários para vê-los aqui." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "O nome da nota adesiva não pode ter mais de 100 caracteres.", + "already_exists": "Já existe uma nota adesiva sem descrição" + }, + "created": { + "title": "Nota adesiva criada", + "message": "A nota adesiva foi criada com sucesso" + }, + "not_created": { + "title": "Nota adesiva não criada", + "message": "A nota adesiva não pôde ser criada" + }, + "updated": { + "title": "Nota adesiva atualizada", + "message": "A nota adesiva foi atualizada com sucesso" + }, + "not_updated": { + "title": "Nota adesiva não atualizada", + "message": "A nota adesiva não pôde ser atualizada" + }, + "removed": { + "title": "Nota adesiva removida", + "message": "A nota adesiva foi removida com sucesso" + }, + "not_removed": { + "title": "Nota adesiva não removida", + "message": "A nota adesiva não pôde ser removida" } }, "open_button": "Abrir painel de navegação", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Mover", + "loading": "Movendo" + }, + "cannot_move_to_teamspace": "Páginas privadas e compartilhadas não podem ser movidas para um espaço de equipe.", "placeholders": { + "workspace_to_all": "Pesquisar por projetos e espaços de equipe", + "workspace_to_project": "Pesquisar por projetos", + "project_to_all": "Pesquisar por projetos e espaços de equipe", + "project_to_project": "Pesquisar por projetos", "project_to_all_with_wiki": "Pesquisar coleções wiki, projetos e teamspaces", "project_to_project_with_wiki": "Pesquisar coleções wiki e projetos" }, "toasts": { + "success": { + "title": "Sucesso!", + "message": "Página movida com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Não foi possível mover a página. Tente novamente mais tarde." + }, "collection_error": { "title": "Movida para o wiki", "message": "A página foi movida para o wiki, mas não pôde ser adicionada à coleção selecionada. Ela permanece em General." diff --git a/packages/i18n/src/locales/pt-BR/project-settings.json b/packages/i18n/src/locales/pt-BR/project-settings.json index bd76e10e6a0..401a26f8d02 100644 --- a/packages/i18n/src/locales/pt-BR/project-settings.json +++ b/packages/i18n/src/locales/pt-BR/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Membros", "project_lead": "Líder do projeto", + "project_lead_description": "Selecione o líder do projeto.", "default_assignee": "Responsável padrão", + "default_assignee_description": "Selecione o responsável padrão do projeto.", + "project_subscribers": "Assinantes do projeto", + "project_subscribers_description": "Selecione os membros que receberão notificações deste projeto.", "guest_super_permissions": { "title": "Conceder acesso de visualização a todos os itens de trabalho para usuários convidados:", "sub_heading": "Isso permitirá que os convidados tenham acesso de visualização a todos os itens de trabalho do projeto." @@ -30,13 +34,11 @@ "title": "Convidar membros", "sub_heading": "Convide membros para trabalhar em seu projeto.", "select_co_worker": "Selecionar colega de trabalho" - }, - "project_lead_description": "Selecione o líder do projeto.", - "default_assignee_description": "Selecione o responsável padrão do projeto.", - "project_subscribers": "Assinantes do projeto", - "project_subscribers_description": "Selecione os membros que receberão notificações deste projeto." + } }, "states": { + "heading": "Estados", + "description": "Defina e personalize os estados de fluxo de trabalho para acompanhar o progresso dos seus itens de trabalho.", "describe_this_state_for_your_members": "Descreva este estado para seus membros.", "empty_state": { "title": "Nenhum estado disponível para o grupo {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etiquetas", + "description": "Crie etiquetas personalizadas para categorizar e organizar seus itens de trabalho", "label_title": "Título da etiqueta", "label_title_is_required": "O título da etiqueta é obrigatório", "label_max_char": "O nome da etiqueta não deve exceder 255 caracteres", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Estimativas", + "description": "Elas ajudam você a comunicar a complexidade e a carga de trabalho da equipe.", "label": "Estimativas", "title": "Habilitar estimativas para meu projeto", - "description": "Elas ajudam você a comunicar a complexidade e a carga de trabalho da equipe.", + "enable_description": "Elas ajudam você a comunicar a complexidade e a carga de trabalho da equipe.", "no_estimate": "Sem estimativa", "new": "Novo sistema de estimativa", "create": { @@ -112,6 +118,16 @@ "title": "Falha ao reordenar estimativas", "message": "Não foi possível reordenar as estimativas, tente novamente" } + }, + "switch": { + "success": { + "title": "Sistema de estimativa criado", + "message": "Criado e habilitado com sucesso" + }, + "error": { + "title": "Erro", + "message": "Algo deu errado" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automações", + "heading": "Automações", + "description": "Configure ações automatizadas para otimizar seu fluxo de trabalho de gerenciamento de projetos e reduzir tarefas manuais.", "auto-archive": { "title": "Arquivar automaticamente itens de trabalho fechados", "description": "O Plane arquivará automaticamente os itens de trabalho que foram concluídos ou cancelados.", @@ -194,90 +212,116 @@ "description": "Configure o GitHub e outras integrações para sincronizar os itens de trabalho do seu projeto." } }, - "cycles": { - "auto_schedule": { - "heading": "Agendamento automático de ciclos", - "description": "Mantenha os ciclos em movimento sem configuração manual.", - "tooltip": "Crie automaticamente novos ciclos com base na programação escolhida.", - "edit_button": "Editar", - "form": { - "cycle_title": { - "label": "Título do ciclo", - "placeholder": "Título", - "tooltip": "O título será acrescido de números para os ciclos subsequentes. Por exemplo: Design - 1/2/3", - "validation": { - "required": "O título do ciclo é obrigatório", - "max_length": "O título não deve exceder 255 caracteres" - } - }, - "cycle_duration": { - "label": "Duração do ciclo", - "unit": "Semanas", - "validation": { - "required": "A duração do ciclo é obrigatória", - "min": "A duração do ciclo deve ser de pelo menos 1 semana", - "max": "A duração do ciclo não pode exceder 30 semanas", - "positive": "A duração do ciclo deve ser positiva" - } - }, - "cooldown_period": { - "label": "Período de resfriamento", - "unit": "dias", - "tooltip": "Pausa entre ciclos antes do início do próximo.", - "validation": { - "required": "O período de resfriamento é obrigatório", - "negative": "O período de resfriamento não pode ser negativo" - } - }, - "start_date": { - "label": "Dia de início do ciclo", - "validation": { - "required": "A data de início é obrigatória", - "past": "A data de início não pode estar no passado" - } + "workflows": { + "toggle": { + "title": "Habilitar fluxos de trabalho", + "description": "Defina fluxos de trabalho para controlar a movimentação dos itens de trabalho", + "no_states_tooltip": "Nenhum estado foi adicionado ao fluxo de trabalho.", + "no_work_item_types_tooltip": "Nenhum tipo de item de trabalho foi adicionado ao fluxo de trabalho.", + "no_states_or_work_item_types_tooltip": "Nenhum estado ou tipo de item de trabalho foi adicionado ao fluxo de trabalho.", + "toast": { + "loading": { + "enabling": "Habilitando fluxos de trabalho", + "disabling": "Desabilitando fluxos de trabalho" }, - "number_of_cycles": { - "label": "Número de ciclos futuros", - "validation": { - "required": "O número de ciclos é obrigatório", - "min": "Pelo menos 1 ciclo é obrigatório", - "max": "Não é possível agendar mais de 3 ciclos" - } + "success": { + "title": "Sucesso!", + "message": "Fluxos de trabalho habilitados com sucesso." }, - "auto_rollover": { - "label": "Transferência automática de itens de trabalho", - "tooltip": "No dia em que um ciclo for concluído, mover todos os itens de trabalho não concluídos para o próximo ciclo." + "error": { + "title": "Erro!", + "message": "Falha ao habilitar os fluxos de trabalho. Tente novamente." + } + } + }, + "heading": "Fluxos de trabalho", + "description": "Automatize as transições dos itens de trabalho e defina regras para controlar como as tarefas avançam pelo fluxo do seu projeto.", + "add_button": "Adicionar novo fluxo de trabalho", + "search": "Pesquisar fluxos de trabalho", + "detail": { + "define": "Definir fluxo de trabalho", + "add_states": "Adicionar estados", + "unmapped_states": { + "title": "Estados não mapeados detectados", + "description": "Alguns itens de trabalho dos tipos selecionados estão atualmente em estados que não existem neste fluxo de trabalho.", + "note": "Se você habilitar este fluxo de trabalho, esses itens serão movidos automaticamente para o estado inicial deste fluxo de trabalho.", + "label": "Estados ausentes", + "tooltip": "Alguns itens de trabalho estão em estados que não estão mapeados para este fluxo de trabalho. Abra o fluxo de trabalho para revisar." + } + }, + "select_states": { + "empty_state": { + "title": "Todos os estados estão em uso", + "description": "Todos os estados definidos para este projeto já estão presentes no seu fluxo de trabalho atual." + } + }, + "default_footer": { + "fallback_message": "Este fluxo de trabalho se aplica a qualquer tipo de item de trabalho que não esteja atribuído a um fluxo de trabalho." + }, + "create": { + "heading": "Criar novo fluxo de trabalho", + "name": { + "placeholder": "Adicione um nome único", + "validation": { + "max_length": "O nome deve ter menos de 255 caracteres", + "required": "O nome é obrigatório", + "invalid": "O nome só pode conter letras, números, espaços, hifens e apóstrofos" } }, - "toast": { - "toggle": { - "loading_enable": "Ativando agendamento automático de ciclos", - "loading_disable": "Desativando agendamento automático de ciclos", - "success": { - "title": "Sucesso!", - "message": "Agendamento automático de ciclos ativado com sucesso." - }, - "error": { - "title": "Erro!", - "message": "Falha ao ativar o agendamento automático de ciclos." - } - }, - "save": { - "loading": "Salvando configuração de agendamento automático de ciclos", - "success": { - "title": "Sucesso!", - "message_create": "Configuração de agendamento automático de ciclos salva com sucesso.", - "message_update": "Configuração de agendamento automático de ciclos atualizada com sucesso." - }, - "error": { - "title": "Erro!", - "message_create": "Falha ao salvar a configuração de agendamento automático de ciclos.", - "message_update": "Falha ao atualizar a configuração de agendamento automático de ciclos." - } + "description": { + "placeholder": "Adicione uma breve descrição", + "validation": { + "invalid": "A descrição só pode conter letras, números, espaços, hifens e apóstrofos" } + }, + "work_item_type": { + "label": "Tipo de item de trabalho" + }, + "success": { + "title": "Sucesso!", + "message": "Fluxo de trabalho criado com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Falha ao criar o fluxo de trabalho. Tente novamente." + } + }, + "update": { + "success": { + "title": "Sucesso!", + "message": "Fluxo de trabalho atualizado com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Falha ao atualizar o fluxo de trabalho. Tente novamente." + } + }, + "delete": { + "loading": "Excluindo fluxo de trabalho", + "success": { + "title": "Sucesso!", + "message": "Fluxo de trabalho excluído com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Falha ao excluir o fluxo de trabalho. Tente novamente." + } + }, + "add_states": { + "success": { + "title": "Sucesso!", + "message": "Estados adicionados com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Falha ao adicionar estados. Tente novamente." } } }, + "work_item_types": { + "heading": "Tipos de item de trabalho", + "description": "Crie e personalize diferentes tipos de itens de trabalho com propriedades únicas" + }, "features": { "cycles": { "title": "Ciclos", @@ -385,6 +429,98 @@ "success": "Recurso do projeto atualizado com sucesso.", "error": "Algo deu errado ao atualizar o recurso do projeto. Por favor, tente novamente." } + }, + "project_updates": { + "heading": "Atualizações do projeto", + "description": "Acompanhamento consolidado e monitoramento do progresso para este projeto" + }, + "templates": { + "heading": "Modelos", + "description": "Economize 80% do tempo gasto na criação de projetos, itens de trabalho e páginas quando você usar modelos." + }, + "cycles": { + "auto_schedule": { + "heading": "Agendamento automático de ciclos", + "description": "Mantenha os ciclos em movimento sem configuração manual.", + "tooltip": "Crie automaticamente novos ciclos com base na programação escolhida.", + "edit_button": "Editar", + "form": { + "cycle_title": { + "label": "Título do ciclo", + "placeholder": "Título", + "tooltip": "O título será acrescido de números para os ciclos subsequentes. Por exemplo: Design - 1/2/3", + "validation": { + "required": "O título do ciclo é obrigatório", + "max_length": "O título não deve exceder 255 caracteres" + } + }, + "cycle_duration": { + "label": "Duração do ciclo", + "unit": "Semanas", + "validation": { + "required": "A duração do ciclo é obrigatória", + "min": "A duração do ciclo deve ser de pelo menos 1 semana", + "max": "A duração do ciclo não pode exceder 30 semanas", + "positive": "A duração do ciclo deve ser positiva" + } + }, + "cooldown_period": { + "label": "Período de resfriamento", + "unit": "dias", + "tooltip": "Pausa entre ciclos antes do início do próximo.", + "validation": { + "required": "O período de resfriamento é obrigatório", + "negative": "O período de resfriamento não pode ser negativo" + } + }, + "start_date": { + "label": "Dia de início do ciclo", + "validation": { + "required": "A data de início é obrigatória", + "past": "A data de início não pode estar no passado" + } + }, + "number_of_cycles": { + "label": "Número de ciclos futuros", + "validation": { + "required": "O número de ciclos é obrigatório", + "min": "Pelo menos 1 ciclo é obrigatório", + "max": "Não é possível agendar mais de 3 ciclos" + } + }, + "auto_rollover": { + "label": "Transferência automática de itens de trabalho", + "tooltip": "No dia em que um ciclo for concluído, mover todos os itens de trabalho não concluídos para o próximo ciclo." + } + }, + "toast": { + "toggle": { + "loading_enable": "Ativando agendamento automático de ciclos", + "loading_disable": "Desativando agendamento automático de ciclos", + "success": { + "title": "Sucesso!", + "message": "Agendamento automático de ciclos ativado com sucesso." + }, + "error": { + "title": "Erro!", + "message": "Falha ao ativar o agendamento automático de ciclos." + } + }, + "save": { + "loading": "Salvando configuração de agendamento automático de ciclos", + "success": { + "title": "Sucesso!", + "message_create": "Configuração de agendamento automático de ciclos salva com sucesso.", + "message_update": "Configuração de agendamento automático de ciclos atualizada com sucesso." + }, + "error": { + "title": "Erro!", + "message_create": "Falha ao salvar a configuração de agendamento automático de ciclos.", + "message_update": "Falha ao atualizar a configuração de agendamento automático de ciclos." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/pt-BR/project.json b/packages/i18n/src/locales/pt-BR/project.json index 42a4595fae6..2bd097064af 100644 --- a/packages/i18n/src/locales/pt-BR/project.json +++ b/packages/i18n/src/locales/pt-BR/project.json @@ -16,10 +16,15 @@ "remove_filters_to_see_all_cycles": "Remova os filtros para ver todos os ciclos", "remove_search_criteria_to_see_all_cycles": "Remova os critérios de pesquisa para ver todos os ciclos", "only_completed_cycles_can_be_archived": "Apenas ciclos concluídos podem ser arquivados", + "start_date": "Data de início", + "end_date": "Data de término", + "in_your_timezone": "No seu fuso horário", "transfer_work_items": "Transferir {count} itens de trabalho", "transfer": { "no_cycles_available": "Não há outros ciclos disponíveis para transferir itens de trabalho." }, + "date_range": "Intervalo de datas", + "add_date": "Adicionar data", "active_cycle": { "label": "Ciclo ativo", "progress": "Progresso", @@ -131,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Salve visualizações filtradas para o seu projeto. Crie quantas precisar", + "description": "As visualizações são um conjunto de filtros salvos que você usa com frequência ou deseja acesso fácil. Todos os seus colegas em um projeto podem ver as visualizações de todos e escolher o que melhor se adapta às suas necessidades.", + "primary_button": { + "text": "Crie sua primeira visualização", + "comic": { + "title": "As visualizações funcionam sobre as propriedades do item de trabalho.", + "description": "Você pode criar uma visualização a partir daqui com quantas propriedades como filtros que você achar adequado." + } + }, + "filter": { + "title": "Nenhuma visualização correspondente", + "description": "Nenhuma visualização corresponde aos critérios de pesquisa.\n Crie uma nova visualização em vez disso." + } + }, + "no_archived_issues": { + "title": "Ainda não há itens de trabalho arquivados", + "description": "Manualmente ou através de automação, você pode arquivar itens de trabalho concluídos ou cancelados. Encontre-os aqui depois de arquivados.", + "primary_button": { + "text": "Definir automação" + } + }, + "issues_empty_filter": { + "title": "Nenhum item de trabalho encontrado correspondente aos filtros aplicados", + "secondary_button": { + "text": "Limpar todos os filtros" + } + }, + "public": { + "title": "Ainda não há páginas públicas", + "description": "Veja aqui as páginas compartilhadas com todos do seu projeto.", + "primary_button": { + "text": "Crie sua primeira página" + } + }, + "archived": { + "title": "Ainda não há páginas arquivadas", + "description": "Arquive páginas que não estão no seu radar. Acesse-as aqui quando precisar." + }, + "shared": { + "title": "Ainda não há páginas compartilhadas", + "description": "As páginas que outros compartilharam com você aparecerão aqui." + } + }, + "delete_view": { + "title": "Tem certeza de que deseja excluir esta visualização?", + "content": "Se você confirmar, todas as opções de classificação, filtro e exibição + o layout que você escolheu para esta visualização serão excluídos permanentemente sem nenhuma maneira de restaurá-los." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -212,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Salve visualizações filtradas para o seu projeto. Crie quantas precisar", - "description": "As visualizações são um conjunto de filtros salvos que você usa com frequência ou deseja acesso fácil. Todos os seus colegas em um projeto podem ver as visualizações de todos e escolher o que melhor se adapta às suas necessidades.", - "primary_button": { - "text": "Crie sua primeira visualização", - "comic": { - "title": "As visualizações funcionam sobre as propriedades do item de trabalho.", - "description": "Você pode criar uma visualização a partir daqui com quantas propriedades como filtros que você achar adequado." - } - } - }, - "filter": { - "title": "Nenhuma visualização correspondente", - "description": "Nenhuma visualização corresponde aos critérios de pesquisa.\nCrie uma nova visualização em vez disso." - } - }, - "delete_view": { - "title": "Tem certeza de que deseja excluir esta visualização?", - "content": "Se você confirmar, todas as opções de classificação, filtro e exibição + o layout que você escolheu para esta visualização serão excluídos permanentemente sem nenhuma maneira de restaurá-los." - } - }, "project_page": { "empty_state": { "general": { @@ -326,6 +359,13 @@ "manual": "Manual" } }, + "project_members": { + "full_name": "Nome completo", + "display_name": "Nome de exibição", + "email": "E-mail", + "joining_date": "Data de entrada", + "role": "Cargo" + }, "project": { "members_import": { "title": "Importar membros do CSV", diff --git a/packages/i18n/src/locales/pt-BR/settings.json b/packages/i18n/src/locales/pt-BR/settings.json index 397119f5ab6..d7a94a546e0 100644 --- a/packages/i18n/src/locales/pt-BR/settings.json +++ b/packages/i18n/src/locales/pt-BR/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferências", + "description": "Personalize sua experiência no aplicativo do jeito que você trabalha" + }, "notifications": { + "heading": "Notificações por e-mail", + "description": "Mantenha-se informado sobre os itens de trabalho aos quais você está inscrito. Ative isso para ser notificado.", "select_default_view": "Selecionar visualização padrão", "compact": "Compacto", "full": "Tela cheia" + }, + "security": { + "heading": "Segurança" + }, + "api_tokens": { + "title": "Tokens de Acesso Pessoal", + "description": "Gere tokens de API seguros para integrar seus dados com sistemas e aplicativos externos." + }, + "activity": { + "heading": "Atividade", + "description": "Acompanhe suas ações e alterações recentes em todos os projetos e itens de trabalho." + }, + "connections": { + "title": "Conexões", + "heading": "Conexões", + "description": "Gerencie as configurações de conexões do seu espaço de trabalho." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Perfil", "security": "Segurança", "activity": "Atividade", - "appearance": "Aparência", + "preferences": "Preferências", "notifications": "Notificações", + "api-tokens": "Tokens de Acesso Pessoal", "connections": "Conexões" }, "tabs": { diff --git a/packages/i18n/src/locales/pt-BR/template.json b/packages/i18n/src/locales/pt-BR/template.json index fd2b27bb6f9..cd3bdb07663 100644 --- a/packages/i18n/src/locales/pt-BR/template.json +++ b/packages/i18n/src/locales/pt-BR/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Modelos", "description": "Economize 80% do tempo gasto na criação de projetos, itens de trabalho e páginas quando você usa modelos.", + "new_project_template": "Novo modelo de projeto", + "new_work_item_template": "Novo modelo de item de trabalho", + "new_page_template": "Novo modelo de página", "options": { "project": { "label": "Modelos de projeto" @@ -157,6 +160,14 @@ "required": "Pelo menos uma palavra-chave é obrigatória" } }, + "website": { + "label": "URL do site", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL inválida", + "maxLength": "A URL deve ter menos de 800 caracteres" + } + }, "company_name": { "label": "Nazwa firmy", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Nieprawidłowy adres e-mail", - "required": "Email podpory jest wymagany", "maxLength": "Email podpory powinien mieć mniej niż 255 znaków" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Ainda não há etiquetas. Crie etiquetas para ajudar a organizar e filtrar itens de trabalho em seu projeto." }, + "no_modules": { + "description": "Ainda não há módulos. Organize o trabalho em subprojetos com líderes e responsáveis dedicados." + }, "no_work_items": { "description": "Não há itens de trabalho ainda. Adicione um para estruturar seu trabalho melhor." }, @@ -298,6 +311,23 @@ "prefix": "Tem certeza que deseja remover o modelo-", "suffix": "? Este modelo não estará mais disponível para usuários no marketplace." } + }, + "dropdown": { + "add": { + "work_item": "Adicionar novo modelo", + "project": "Adicionar novo modelo" + }, + "label": { + "project": "Escolher um modelo de projeto", + "page": "Escolher a partir do modelo" + }, + "tooltip": { + "work_item": "Escolher um modelo de item de trabalho" + }, + "no_results": { + "work_item": "Nenhum modelo encontrado.", + "project": "Nenhum modelo encontrado." + } } } } diff --git a/packages/i18n/src/locales/pt-BR/tour.json b/packages/i18n/src/locales/pt-BR/tour.json index 530afa4d24a..512aad68fab 100644 --- a/packages/i18n/src/locales/pt-BR/tour.json +++ b/packages/i18n/src/locales/pt-BR/tour.json @@ -110,6 +110,12 @@ "description": "Um item de trabalho pode ser adiado para revisá-lo mais tarde. Ele será movido para o final da sua lista de solicitações abertas." } }, + "mcp_connectors": { + "step_zero": { + "title": "Pare de alternar abas. Conecte seu mundo.", + "description": "Conecte o GitHub e o Slack para acompanhar PRs e resumir conversas diretamente no Plane AI." + } + }, "navigation": { "modal": { "title": "Navegação, reimaginada", diff --git a/packages/i18n/src/locales/pt-BR/update.json b/packages/i18n/src/locales/pt-BR/update.json index 97633e822fd..ba914fc990c 100644 --- a/packages/i18n/src/locales/pt-BR/update.json +++ b/packages/i18n/src/locales/pt-BR/update.json @@ -1,33 +1,16 @@ { "updates": { + "progress": { + "title": "Progresso", + "since_last_update": "Desde a última atualização", + "comments": "{count, plural, one{# comentário} other{# comentários}}" + }, "add_update": "Adicionar atualização", "add_update_placeholder": "Adicione sua atualização aqui", "empty": { "title": "Ainda não há atualizações", "description": "Você pode ver as atualizações aqui." }, - "delete": { - "title": "Deletar atualização", - "confirmation": "Você tem certeza que deseja deletar esta atualização? Esta operação é irreversível.", - "success": { - "title": "Atualização deletada", - "message": "A atualização foi deletada com sucesso." - }, - "error": { - "title": "Atualização não deletada", - "message": "A atualização não foi deletada." - } - }, - "update": { - "success": { - "title": "Atualização atualizada", - "message": "A atualização foi atualizada com sucesso." - }, - "error": { - "title": "Atualização não atualizada", - "message": "A atualização não foi atualizada." - } - }, "reaction": { "create": { "success": { @@ -50,11 +33,6 @@ } } }, - "progress": { - "title": "Progresso", - "since_last_update": "Desde a última atualização", - "comments": "{count, plural, one{# comentário} other{# comentários}}" - }, "create": { "success": { "title": "Atualização criada", @@ -64,6 +42,28 @@ "title": "Atualização não criada", "message": "A atualização não foi criada." } + }, + "delete": { + "title": "Deletar atualização", + "confirmation": "Você tem certeza que deseja deletar esta atualização? Esta operação é irreversível.", + "success": { + "title": "Atualização deletada", + "message": "A atualização foi deletada com sucesso." + }, + "error": { + "title": "Atualização não deletada", + "message": "A atualização não foi deletada." + } + }, + "update": { + "success": { + "title": "Atualização atualizada", + "message": "A atualização foi atualizada com sucesso." + }, + "error": { + "title": "Atualização não atualizada", + "message": "A atualização não foi atualizada." + } } } } diff --git a/packages/i18n/src/locales/pt-BR/wiki.json b/packages/i18n/src/locales/pt-BR/wiki.json index 0cb05c8728d..5769bb962f1 100644 --- a/packages/i18n/src/locales/pt-BR/wiki.json +++ b/packages/i18n/src/locales/pt-BR/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Não foi possível criar a página ou adicioná-la à coleção. Tente novamente.", "collection_link_copied": "Link da coleção copiado para a área de transferência." } + }, + "wiki": { + "upgrade_flow": { + "title": "Faça upgrade para desbloquear o Wiki", + "description": "Desbloqueie páginas públicas, histórico de versões, páginas compartilhadas, colaboração em tempo real e páginas do espaço de trabalho para wikis, documentos da empresa e bases de conhecimento com o Plane Pro.", + "upgrade_button": { + "text": "Fazer upgrade" + }, + "learn_more_button": { + "text": "Saiba mais" + }, + "download_button": { + "text": "Baixar dados", + "loading": "Baixando" + }, + "tabs": { + "nested_pages": "Páginas aninhadas", + "add_embeds": "Adicionar incorporações", + "publish_pages": "Publicar páginas", + "comments": "Comentários" + } + }, + "nested_pages_download_banner": { + "title": "As páginas aninhadas exigem um plano pago. Faça upgrade para desbloquear." + } } } diff --git a/packages/i18n/src/locales/pt-BR/work-item-type.json b/packages/i18n/src/locales/pt-BR/work-item-type.json index ae4e4112fc7..b287bf27033 100644 --- a/packages/i18n/src/locales/pt-BR/work-item-type.json +++ b/packages/i18n/src/locales/pt-BR/work-item-type.json @@ -3,11 +3,25 @@ "label": "Tipos de Item de Trabalho", "label_lowercase": "tipos de item de trabalho", "settings": { - "title": "Tipos de Item de Trabalho", + "description": "Personalize e adicione suas próprias propriedades para adaptar às necessidades da sua equipe.", + "cant_delete_default_message": "Não é possível excluir este tipo de item de trabalho, pois ele está definido como o tipo padrão para este projeto.", + "set_as_default": "Definir como padrão", + "cant_set_default_inactive_message": "Ative este tipo antes de defini-lo como padrão", + "set_default_confirmation": { + "title": "Definir como tipo de item de trabalho padrão", + "description": "Definir {name} como padrão irá importá-lo para todos os projetos neste espaço de trabalho. Todos os novos itens de trabalho usarão este tipo por padrão.", + "confirm_button": "Definir como padrão" + }, "properties": { "title": "Propriedades personalizadas", + "description": "Crie e personalize propriedades.", "tooltip": "Cada tipo de item de trabalho vem com um conjunto padrão de propriedades como Título, Descrição, Responsável, Estado, Prioridade, Data de início, Data de vencimento, Módulo, Ciclo etc. Você também pode personalizar e adicionar suas próprias propriedades para adaptar às necessidades da sua equipe.", "add_button": "Adicionar nova propriedade", + "project": { + "add_button": { + "import_from_workspace": "Importar do espaço de trabalho" + } + }, "dropdown": { "label": "Tipo de propriedade", "placeholder": "Selecionar tipo" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Criar nova propriedade personalizada", + "update": "Atualizar propriedade personalizada" + }, "form": { "display_name": { "placeholder": "Título" @@ -213,9 +231,50 @@ "description": "Novas propriedades que você adicionar para este tipo de item de trabalho aparecerão aqui." } }, + "types": { + "title": "Tipos", + "description": "Crie e personalize tipos de itens de trabalho com propriedades.", + "sort_options": { + "project_count": "Número de projetos dos quais faz parte" + }, + "filter_options": { + "show_active": "Mostrar ativos", + "show_inactive": "Mostrar inativos" + }, + "project": { + "add_button": { + "create_new": "Criar novo", + "import_from_workspace": "Importar do espaço de trabalho" + }, + "banner": { + "with_access": "Habilite os tipos de item de trabalho para importar tipos do nível do espaço de trabalho", + "without_access": "Os tipos de item de trabalho estão desabilitados. Entre em contato com o administrador do espaço de trabalho para habilitá-los nas configurações do espaço de trabalho." + } + } + }, + "linked_properties": { + "title": "Propriedades personalizadas", + "add_button": "Adicionar propriedades", + "modal": { + "title": "Adicionar propriedades", + "empty": { + "title": "Nenhuma propriedade disponível", + "description": "Todas as propriedades já foram vinculadas a este tipo." + } + }, + "unlink_confirmation": { + "title": "Desvincular propriedade", + "description": "Desvincular esta propriedade excluirá permanentemente todos os seus valores em todos os itens de trabalho que usam este tipo. Esta ação não pode ser desfeita.", + "input_label": "Digite", + "input_label_suffix": "para continuar:", + "confirm": "Desvincular propriedade", + "loading": "Desvinculando" + } + }, "item_delete_confirmation": { "title": "Excluir este tipo", "description": "A exclusão de tipos pode levar à perda de dados existentes.", + "can_disable_warning": "Deseja desativar o tipo em vez disso?", "primary_button": "Sim, excluir", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Não é possível excluir o tipo de item de trabalho padrão", "cannot_delete_work_item_type_with_associated_work_items": "Não é possível excluir o tipo de item de trabalho com itens de trabalho associados" - }, - "can_disable_warning": "Deseja desativar o tipo em vez disso?" - }, - "cant_delete_default_message": "Não é possível excluir este tipo de item de trabalho, pois ele está definido como o tipo padrão para este projeto.", - "set_as_default": "Definir como padrão", - "cant_set_default_inactive_message": "Ative este tipo antes de defini-lo como padrão", - "set_default_confirmation": { - "title": "Definir como tipo de item de trabalho padrão", - "description": "Definir {name} como padrão irá importá-lo para todos os projetos neste espaço de trabalho. Todos os novos itens de trabalho usarão este tipo por padrão.", - "confirm_button": "Definir como padrão" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Erro!", "message": { + "default": "Falha ao criar o tipo de item de trabalho. Tente novamente!", "conflict": "O tipo {name} já existe. Escolha um nome diferente." } } @@ -269,6 +320,7 @@ "error": { "title": "Erro!", "message": { + "default": "Falha ao atualizar o tipo de item de trabalho. Tente novamente!", "conflict": "O tipo {name} já existe. Escolha um nome diferente." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Erro de validação!", + "title": "Salvar quebrará os vínculos existentes", "content": { "intro": "O tipo de item de trabalho {workItemTypeName} possui:", - "parent_items": "{count, plural, one {item de trabalho pai} other {itens de trabalho pai}}", + "parent_items": "{count, plural, one {# vínculo pai será} other {# vínculos pai serão}} removidos.", "child_items": "{count, plural, one {subitem de trabalho} other {subitens de trabalho}}", "parent_line_suffix_when_also_children": ", e ", "footer": "Esta alteração removerá as relações pai-filho dos itens de trabalho existentes do tipo {workItemTypeName}." }, "confirm_input": { - "label": "Digite «Confirmar» para continuar.", - "placeholder": "Confirmar" + "label": "Digite «confirmar» para continuar.", + "placeholder": "confirmar" }, "error_toast": { "title": "Erro!", - "message": "Falha ao romper a hierarquia. Por favor, tente novamente." + "message": "Falha ao desvincular e salvar. Tente novamente." }, "confirm_button": { - "loading": "Aplicando", - "default": "Aplicar e desvincular" + "loading": "Salvando", + "default": "Salvar mesmo assim" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/pt-BR/work-item.json b/packages/i18n/src/locales/pt-BR/work-item.json index 940cac8476a..614a34a21d8 100644 --- a/packages/i18n/src/locales/pt-BR/work-item.json +++ b/packages/i18n/src/locales/pt-BR/work-item.json @@ -20,6 +20,7 @@ "due_date": "Adicionar data de vencimento", "parent": "Adicionar item de trabalho pai", "sub_issue": "Adicionar sub-item de trabalho", + "dependency": "Adicionar dependência", "relation": "Adicionar relação", "link": "Adicionar link", "existing": "Adicionar item de trabalho existente" @@ -110,6 +111,43 @@ "copy_link": { "success": "Link do comentário copiado para a área de transferência", "error": "Erro ao copiar o link do comentário. Tente novamente mais tarde." + }, + "replies": { + "create": { + "submit_button": "Adicionar resposta", + "placeholder": "Adicionar resposta" + }, + "toast": { + "fetch": { + "error": { + "message": "Falha ao buscar as respostas" + } + }, + "create": { + "success": { + "message": "Resposta criada com sucesso" + }, + "error": { + "message": "Falha ao criar a resposta" + } + }, + "update": { + "success": { + "message": "Resposta atualizada com sucesso" + }, + "error": { + "message": "Falha ao atualizar a resposta" + } + }, + "delete": { + "success": { + "message": "Resposta excluída com sucesso" + }, + "error": { + "message": "Falha ao excluir a resposta" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Desmarcar tudo" }, "open_in_full_screen": "Abrir item de trabalho em tela cheia", + "duplicate": { + "modal": { + "title": "Fazer uma cópia para outro projeto", + "description1": "Isto cria uma cópia do item de trabalho.", + "description2": "Todos os dados de propriedades serão removidos ao duplicar.", + "placeholder": "Selecionar um projeto" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Item de trabalho duplicado com sucesso" + }, + "error": { + "message": "Falha ao duplicar o item de trabalho" + } + } + }, + "pages": { + "link_pages": "Conectar páginas", + "show_wiki_pages": "Mostrar páginas Wiki", + "link_pages_to": "Conectar páginas a", + "linked_pages": "Páginas vinculadas", + "no_description": "Esta página está vazia. Por que você não escreve algo dentro dela e vê isso aparecer aqui como este espaço reservado", + "toasts": { + "link": { + "success": { + "title": "Páginas atualizadas", + "message": "Páginas atualizadas com sucesso" + }, + "error": { + "title": "Falha ao atualizar páginas", + "message": "Falha ao atualizar páginas" + } + }, + "remove": { + "success": { + "title": "Página removida", + "message": "Página removida com sucesso" + }, + "error": { + "title": "Falha ao remover página", + "message": "Falha ao remover página" + } + } + } + }, "vote": { "click_to_upvote": "Clique para votar a favor", "click_to_downvote": "Clique para votar contra", @@ -241,54 +326,6 @@ "title": "Não é possível atualizar itens de trabalho", "message": "A mudança de estado não é permitida para alguns itens de trabalho. Certifique-se de que a mudança de estado seja permitida." } - }, - "workflows": { - "toggle": { - "title": "Habilitar fluxos de trabalho", - "description": "Defina fluxos de trabalho para controlar a movimentação dos itens de trabalho", - "no_states_tooltip": "Nenhum estado foi adicionado ao fluxo de trabalho.", - "toast": { - "loading": { - "enabling": "Habilitando fluxos de trabalho", - "disabling": "Desabilitando fluxos de trabalho" - }, - "success": { - "title": "Sucesso!", - "message": "Fluxos de trabalho habilitados com sucesso." - }, - "error": { - "title": "Erro!", - "message": "Falha ao habilitar os fluxos de trabalho. Tente novamente." - } - } - }, - "heading": "Fluxos de trabalho", - "description": "Automatize as transições dos itens de trabalho e defina regras para controlar como as tarefas avançam pelo fluxo do seu projeto.", - "add_button": "Adicionar novo fluxo de trabalho", - "search": "Pesquisar fluxos de trabalho", - "detail": { - "define": "Definir fluxo de trabalho", - "add_states": "Adicionar estados", - "unmapped_states": { - "title": "Estados não mapeados detectados", - "description": "Alguns itens de trabalho dos tipos selecionados estão atualmente em estados que não existem neste fluxo de trabalho.", - "note": "Se você habilitar este fluxo de trabalho, esses itens serão movidos automaticamente para o estado inicial deste fluxo de trabalho.", - "label": "Estados ausentes", - "tooltip": "Alguns itens de trabalho estão em estados que não estão mapeados para este fluxo de trabalho. Abra o fluxo de trabalho para revisá-lo." - } - }, - "select_states": { - "empty_state": { - "title": "Todos os estados estão em uso", - "description": "Todos os estados definidos para este projeto já estão presentes no seu fluxo de trabalho atual." - } - }, - "default_footer": { - "fallback_message": "Este fluxo de trabalho se aplica a qualquer tipo de item de trabalho que não esteja atribuído a um fluxo de trabalho." - }, - "create": { - "heading": "Criar novo fluxo de trabalho" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/pt-BR/workspace-settings.json b/packages/i18n/src/locales/pt-BR/workspace-settings.json index 0866f988969..ba42f922246 100644 --- a/packages/i18n/src/locales/pt-BR/workspace-settings.json +++ b/packages/i18n/src/locales/pt-BR/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Faturamento e planos", + "description": "Escolha seu plano, gerencie assinaturas e faça upgrade facilmente conforme suas necessidades crescem.", "title": "Faturamento e planos", "current_plan": "Plano atual", "free_plan": "Você está usando o plano gratuito atualmente", "view_plans": "Ver planos" }, "exports": { + "heading": "Exportações", + "description": "Exporte os dados do seu projeto em vários formatos e acesse seu histórico de exportações com links para download.", "title": "Exportações", "exporting": "Exportando", "previous_exports": "Exportações anteriores", "export_separate_files": "Exporte os dados em arquivos separados", + "exporting_projects": "Exportando projeto", + "format": "Formato", "filters_info": "Aplique filtros para exportar itens de trabalho específicos com base em seus critérios.", "modal": { "title": "Exportar para", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooks", + "description": "Automatize notificações para serviços externos quando ocorrerem eventos do projeto.", "title": "Webhooks", "add_webhook": "Adicionar webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integrações", + "heading": "Integrações", + "description": "Conecte-se com ferramentas e serviços populares para sincronizar seu trabalho em todo o seu ecossistema de fluxo de trabalho.", "page_title": "Trabalhe com seus dados do Plane em aplicativos disponíveis ou nos seus próprios.", "page_description": "Veja todas as integrações em uso por este workspace ou por você." }, "imports": { - "title": "Importações" + "title": "Importações", + "heading": "Importações", + "description": "Conecte e importe dados das suas ferramentas de gerenciamento de projetos existentes para otimizar a integração do seu fluxo de trabalho." }, "worklogs": { - "title": "Registros de trabalho" + "title": "Registros de trabalho", + "heading": "Registros de trabalho", + "description": "Baixe registros de trabalho, também conhecidos como folhas de ponto, de qualquer pessoa em qualquer projeto." }, "group_syncing": { "title": "Sincronização de grupos", @@ -242,7 +256,10 @@ "description": "Configure seu domínio e habilite o Single sign-on" }, "project_states": { - "title": "Estados do projeto" + "title": "Estados do projeto", + "heading": "Veja uma visão geral do progresso de todos os projetos.", + "description": "Os Estados de projeto são um recurso exclusivo do Plane para acompanhar o progresso de todos os seus projetos por qualquer propriedade do projeto.", + "go_to_settings": "Ir para as configurações" }, "projects": { "title": "Projetos", @@ -252,6 +269,16 @@ "labels": "Etiquetas do projeto" } }, + "templates": { + "title": "Modelos", + "heading": "Modelos", + "description": "Economize 80% do tempo gasto na criação de projetos, itens de trabalho e páginas quando você usar modelos." + }, + "relations": { + "title": "Relações", + "heading": "Relações", + "description": "Crie e gerencie tipos de relação que conectam itens de trabalho em todo o seu espaço de trabalho." + }, "cancel_trial": { "title": "Cancele seu período de teste primeiro.", "description": "Você tem um período de teste ativo para um de nossos planos pagos. Por favor, cancele-o primeiro para prosseguir.", @@ -263,6 +290,7 @@ "cancel_error_message": "Tente novamente, por favor." }, "applications": { + "internal": "Interno", "title": "Aplicativos", "applicationId_copied": "ID da aplicação copiado para a área de transferência", "clientId_copied": "ID do cliente copiado para a área de transferência", @@ -271,10 +299,61 @@ "your_apps": "Seus aplicativos", "connect": "Conectar", "connected": "Conectado", + "disconnect": "Desconectar", "install": "Instalar", "installed": "Instalado", "configure": "Configurar", "app_available": "Você fez este aplicativo disponível para uso com um workspace do Plane", + "app_credentials_regenrated": { + "title": "As credenciais do aplicativo foram regeneradas com sucesso", + "description": "Substitua o segredo do cliente em todos os lugares onde for usado. O segredo anterior não é mais válido." + }, + "app_created": { + "title": "Aplicativo criado com sucesso", + "description": "Use as credenciais para instalar o aplicativo em um workspace Plane" + }, + "installed_apps": "Aplicativos instalados", + "all_apps": "Todos os aplicativos", + "internal_apps": "Aplicativos internos", + "app_name_title": "Como você vai chamar este aplicativo", + "app_description_title": { + "label": "Descrição longa", + "placeholder": "Escreva uma descrição longa para o marketplace. Pressione '/' para comandos." + }, + "authorization_grant_type": { + "title": "Tipo de conexão", + "description": "Escolha se seu aplicativo deve ser instalado uma vez para o workspace ou permitir que cada usuário conecte sua própria conta" + }, + "website": { + "title": "Site", + "description": "Link para o site do seu aplicativo.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Criador de aplicativos", + "description": "A pessoa ou organização que está criando o aplicativo." + }, + "app_maker_error": "Criador de aplicativos é obrigatório", + "setup_url": { + "label": "URL de configuração", + "description": "Os usuários serão redirecionados para este URL quando instalarem o aplicativo.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL do webhook", + "description": "É aqui que enviaremos eventos e atualizações do webhook a partir dos workspaces onde seu aplicativo está instalado.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Segredo do webhook", + "description": "Segredo usado para verificar as solicitações de webhook recebidas.", + "placeholder": "Digite uma chave secreta aleatória" + }, + "redirect_uris": { + "label": "URIs de redirecionamento (separadas por espaço)", + "description": "Os usuários serão redirecionados para este caminho após se autenticarem com o Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Conecte um workspace do Plane para começar a usar", "client_id_and_secret": "ID do cliente e chave secreta", "client_id_and_secret_description": "Copie e salve esta chave secreta em Páginas. Você não poderá ver esta chave novamente após fechar.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slug já existe", "failed_to_create_application": "Falha ao criar aplicação", "upload_logo": "Carregar logo", - "app_name_title": "Como você vai chamar este aplicativo", "app_name_error": "Nome do aplicativo é obrigatório", "app_short_description_title": "Dê este aplicativo uma descrição curta", "app_short_description_error": "Descrição curta do aplicativo é obrigatória", - "app_description_title": { - "label": "Descrição longa", - "placeholder": "Escreva uma descrição longa para o marketplace. Pressione '/' para comandos." - }, - "authorization_grant_type": { - "title": "Tipo de conexão", - "description": "Escolha se seu aplicativo deve ser instalado uma vez para o workspace ou permitir que cada usuário conecte sua própria conta" - }, "app_description_error": "Descrição do aplicativo é obrigatória", "app_slug_title": "Slug do aplicativo", "app_slug_error": "Slug do aplicativo é obrigatório", - "app_maker_title": "Criador de aplicativos", - "app_maker_error": "Criador de aplicativos é obrigatório", + "invalid_website_error": "Site inválido", "webhook_url_title": "URL do webhook", "webhook_url_error": "URL do webhook é obrigatória", "invalid_webhook_url_error": "URL do webhook inválida", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Digite origens separadas por espaço onde o aplicativo será permitido fazer solicitações e.g app.com example.com", "create_app": "Criar aplicativo", "update_app": "Atualizar aplicativo", + "build_your_own_app": "Crie seu próprio aplicativo", + "edit_app_details": "Editar detalhes do aplicativo", "regenerate_client_secret_description": "Regenerar a chave secreta do cliente. Se você regenerar a chave, poderá copiar a chave ou baixá-la para um arquivo CSV logo após.", "regenerate_client_secret": "Regenerar chave secreta do cliente", "regenerate_client_secret_confirm_title": "Tem certeza que deseja regenerar a chave secreta do cliente?", @@ -362,7 +433,6 @@ "video_url_title": "URL do Vídeo", "video_url_error": "URL do Vídeo é obrigatória", "invalid_video_url_error": "URL do Vídeo inválida", - "setup_url_title": "URL de Configuração", "setup_url_error": "URL de Configuração é obrigatória", "invalid_setup_url_error": "URL de Configuração inválida", "configuration_url_title": "URL de Configuração", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Arquivo inválido ou excede o limite de tamanho ({size} MB)", "uploading": "Carregando...", "upload_and_save": "Carregar e salvar", - "app_credentials_regenrated": { - "title": "As credenciais do aplicativo foram regeneradas com sucesso", - "description": "Substitua o segredo do cliente em todos os lugares onde for usado. O segredo anterior não é mais válido." - }, - "app_created": { - "title": "Aplicativo criado com sucesso", - "description": "Use as credenciais para instalar o aplicativo em um workspace Plane" - }, - "installed_apps": "Aplicativos instalados", - "all_apps": "Todos os aplicativos", - "internal_apps": "Aplicativos internos", - "website": { - "title": "Site", - "description": "Link para o site do seu aplicativo.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Criador de aplicativos", - "description": "A pessoa ou organização que está criando o aplicativo." - }, - "setup_url": { - "label": "URL de configuração", - "description": "Os usuários serão redirecionados para este URL quando instalarem o aplicativo.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL do webhook", - "description": "É aqui que enviaremos eventos e atualizações do webhook a partir dos workspaces onde seu aplicativo está instalado.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URIs de redirecionamento (separadas por espaço)", - "description": "Os usuários serão redirecionados para este caminho após se autenticarem com o Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Solicitação para instalar", "app_consent_no_access_description": "Este aplicativo só pode ser instalado depois que um administrador do workspace o instalar. Entre em contato com o administrador do seu workspace para continuar.", + "app_consent_unapproved_title": "Este aplicativo ainda não foi revisado ou aprovado pelo Plane.", + "app_consent_unapproved_description": "Certifique-se de confiar neste aplicativo antes de conectá-lo ao seu espaço de trabalho.", + "go_to_app": "Ir para o aplicativo", "enable_app_mentions": "Ativar menções do aplicativo", "enable_app_mentions_tooltip": "Quando isso está ativado, os usuários podem mencionar ou atribuir Work Items a este aplicativo.", "scopes": "Escopos", @@ -433,15 +472,18 @@ "profile": "Acesso às informações do perfil do usuário", "agents": "Acesso a agentes e todas as entidades relacionadas a agentes", "assets": "Acesso a ativos e todas as entidades relacionadas a ativos" - }, - "build_your_own_app": "Crie seu próprio aplicativo", - "edit_app_details": "Editar detalhes do aplicativo", - "internal": "Interno" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Veja seu trabalho se tornar mais inteligente e mais rápido com IA que está conectada de forma nativa ao seu trabalho e base de conhecimentos." + }, + "runners": { + "title": "Plane Runner", + "heading": "Scripts", + "new_script": "Novo Script", + "description": "Automatize seus fluxos de trabalho com scripts personalizados e regras de automação." } }, "empty_state": { diff --git a/packages/i18n/src/locales/pt-BR/workspace.json b/packages/i18n/src/locales/pt-BR/workspace.json index 0d807bb87bd..5570c56dc3a 100644 --- a/packages/i18n/src/locales/pt-BR/workspace.json +++ b/packages/i18n/src/locales/pt-BR/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Escopo e Demanda", "custom": "Análises Personalizadas" }, + "total": "Total de {entity}", + "started_work_items": "{entity} iniciados", + "backlog_work_items": "{entity} no backlog", + "un_started_work_items": "{entity} não iniciados", + "completed_work_items": "{entity} concluídos", + "project_insights": "Insights do projeto", + "summary_of_projects": "Resumo dos projetos", + "all_projects": "Todos os projetos", + "trend_on_charts": "Tendência nos gráficos", + "active_projects": "Projetos ativos", + "customized_insights": "Insights personalizados", + "created_vs_resolved": "Criado vs Resolvido", "empty_state": { - "customized_insights": { - "description": "Os itens de trabalho atribuídos a você, divididos por estado, aparecerão aqui.", - "title": "Ainda não há dados" + "project_insights": { + "title": "Ainda não há dados", + "description": "Os itens de trabalho atribuídos a você, divididos por estado, aparecerão aqui." }, "created_vs_resolved": { - "description": "Os itens de trabalho criados e resolvidos ao longo do tempo aparecerão aqui.", - "title": "Ainda não há dados" + "title": "Ainda não há dados", + "description": "Os itens de trabalho criados e resolvidos ao longo do tempo aparecerão aqui." }, - "project_insights": { + "customized_insights": { "title": "Ainda não há dados", "description": "Os itens de trabalho atribuídos a você, divididos por estado, aparecerão aqui." }, @@ -132,29 +144,11 @@ "description": "A análise de tendências de intake aparecerá aqui. Adicione itens de trabalho ao intake para começar a acompanhar as tendências." } }, - "created_vs_resolved": "Criado vs Resolvido", - "customized_insights": "Insights personalizados", - "backlog_work_items": "{entity} no backlog", - "active_projects": "Projetos ativos", - "trend_on_charts": "Tendência nos gráficos", - "all_projects": "Todos os projetos", - "summary_of_projects": "Resumo dos projetos", - "project_insights": "Insights do projeto", - "started_work_items": "{entity} iniciados", - "total_work_items": "Total de {entity}", - "total_projects": "Total de projetos", - "total_admins": "Total de administradores", - "total_users": "Total de usuários", - "total_intake": "Receita total", - "un_started_work_items": "{entity} não iniciados", - "total_guests": "Total de convidados", - "completed_work_items": "{entity} concluídos", - "total": "Total de {entity}", + "upgrade_to_plan": "Faça upgrade para {plan} para desbloquear {tab}", + "workitem_resolved_vs_pending": "Itens de trabalho resolvidos vs pendentes", "projects_by_status": "Projetos por status", "active_users": "Usuários ativos", - "intake_trends": "Tendências de entrada", - "workitem_resolved_vs_pending": "Itens de trabalho resolvidos vs pendentes", - "upgrade_to_plan": "Faça upgrade para {plan} para desbloquear {tab}" + "intake_trends": "Tendências de entrada" }, "workspace_projects": { "label": "{count, plural, one {Projeto} other {Projetos}}", @@ -318,6 +312,10 @@ "archived": { "title": "Ainda não há páginas arquivadas", "description": "Arquive páginas fora do seu radar. Acesse-as aqui quando necessário." + }, + "shared": { + "title": "Ainda não há páginas compartilhadas", + "description": "As páginas que outros compartilharam com você aparecerão aqui." } } }, diff --git a/packages/i18n/src/locales/ro/auth.json b/packages/i18n/src/locales/ro/auth.json index 0a263ccbfbb..960c5fa7bc6 100644 --- a/packages/i18n/src/locales/ro/auth.json +++ b/packages/i18n/src/locales/ro/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "nume@companie.ro", - "errors": { - "required": "Email-ul este obligatoriu", - "invalid": "Email-ul nu este valid" - } - }, - "password": { - "label": "Parolă", - "set_password": "Setează o parolă", - "placeholder": "Introdu parola", - "confirm_password": { - "label": "Confirmă parola", - "placeholder": "Confirmă parola" - }, - "current_password": { - "label": "Parola curentă" - }, - "new_password": { - "label": "Parolă nouă", - "placeholder": "Introdu parola nouă" - }, - "change_password": { - "label": { - "default": "Schimbă parola", - "submitting": "Se schimbă parola" - } - }, - "errors": { - "match": "Parolele nu se potrivesc", - "empty": "Te rugăm să introduci parola", - "length": "Parola trebuie să aibă mai mult de 8 caractere", - "strength": { - "weak": "Parola este slabă", - "strong": "Parola este puternică" - } - }, - "submit": "Setează parola", - "toast": { - "change_password": { - "success": { - "title": "Succes!", - "message": "Parola a fost schimbată cu succes." - }, - "error": { - "title": "Eroare!", - "message": "Ceva nu a funcționat. Te rugăm să încerci din nou." - } - } - } - }, - "unique_code": { - "label": "Cod unic", - "placeholder": "exemplu-cod-unic", - "paste_code": "Introdu codul trimis pe email", - "requesting_new_code": "Se solicită un cod nou", - "sending_code": "Se trimite codul" - }, - "already_have_an_account": "Ai deja un cont?", - "login": "Autentificare", - "create_account": "Creează un cont", - "new_to_plane": "Ești nou în Plane?", - "back_to_sign_in": "Înapoi la autentificare", - "resend_in": "Retrimite în {seconds} secunde", - "sign_in_with_unique_code": "Autentificare cu cod unic", - "forgot_password": "Ți-ai uitat parola?", - "username": { - "label": "Nume de utilizator", - "placeholder": "Introduceți numele de utilizator" - } - }, - "sign_up": { - "header": { - "label": "Creează un cont pentru a începe să-ți gestionezi activitatea împreună cu echipa ta.", - "step": { - "email": { - "header": "Înregistrare", - "sub_header": "" - }, - "password": { - "header": "Înregistrare", - "sub_header": "Înregistrează-te folosind o combinație email-parolă." - }, - "unique_code": { - "header": "Înregistrare", - "sub_header": "Înregistrează-te folosind un cod unic trimis pe adresa de email de mai sus." - } - } - }, - "errors": { - "password": { - "strength": "Setează o parolă puternică pentru a continua" - } - } - }, - "sign_in": { - "header": { - "label": "Autentifică-te pentru a începe să-ți gestionezi activitatea împreună cu echipa ta.", - "step": { - "email": { - "header": "Autentificare sau înregistrare", - "sub_header": "" - }, - "password": { - "header": "Autentificare sau înregistrare", - "sub_header": "Folosește combinația email-parolă pentru a te autentifica." - }, - "unique_code": { - "header": "Autentificare sau înregistrare", - "sub_header": "Autentifică-te folosind un cod unic trimis pe adresa de email de mai sus." - } - } - } - }, - "forgot_password": { - "title": "Resetează-ți parola", - "description": "Introdu adresa de email verificată a contului tău și îți vom trimite un link pentru resetarea parolei.", - "email_sent": "Am trimis link-ul de resetare pe adresa ta de email", - "send_reset_link": "Trimite link-ul de resetare", - "errors": { - "smtp_not_enabled": "Se pare că administratorul nu a activat SMTP, nu putem trimite link-ul de resetare a parolei" - }, - "toast": { - "success": { - "title": "Email trimis", - "message": "Verifică-ți căsuța de mesaje pentru link-ul de resetare a parolei. Dacă nu apare în câteva minute, verifică folderul de spam." - }, - "error": { - "title": "Eroare!", - "message": "Ceva nu a funcționat. Te rugăm să încerci din nou." - } - } - }, - "reset_password": { - "title": "Setează o parolă nouă", - "description": "Protejează-ți contul cu o parolă puternică" - }, - "set_password": { - "title": "Protejează-ți contul", - "description": "Setarea parolei te ajută să te autentifici în siguranță" - }, - "sign_out": { - "toast": { - "error": { - "title": "Eroare!", - "message": "Deconectarea a eșuat. Te rugăm să încerci din nou." - } - } - }, - "ldap": { - "header": { - "label": "Continuați cu {ldapProviderName}", - "sub_header": "Introduceți datele de autentificare {ldapProviderName}" - } - } - }, "sso": { "header": "Identitate", "description": "Configurați domeniul dvs. pentru a accesa funcțiile de securitate, inclusiv autentificarea unică.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "nume@companie.ro", + "errors": { + "required": "Email-ul este obligatoriu", + "invalid": "Email-ul nu este valid" + } + }, + "password": { + "label": "Parolă", + "set_password": "Setează o parolă", + "placeholder": "Introdu parola", + "confirm_password": { + "label": "Confirmă parola", + "placeholder": "Confirmă parola" + }, + "current_password": { + "label": "Parola curentă" + }, + "new_password": { + "label": "Parolă nouă", + "placeholder": "Introdu parola nouă" + }, + "change_password": { + "label": { + "default": "Schimbă parola", + "submitting": "Se schimbă parola" + } + }, + "errors": { + "match": "Parolele nu se potrivesc", + "empty": "Te rugăm să introduci parola", + "length": "Parola trebuie să aibă mai mult de 8 caractere", + "strength": { + "weak": "Parola este slabă", + "strong": "Parola este puternică" + } + }, + "submit": "Setează parola", + "toast": { + "change_password": { + "success": { + "title": "Succes!", + "message": "Parola a fost schimbată cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Ceva nu a funcționat. Te rugăm să încerci din nou." + } + } + } + }, + "unique_code": { + "label": "Cod unic", + "placeholder": "exemplu-cod-unic", + "paste_code": "Introdu codul trimis pe email", + "requesting_new_code": "Se solicită un cod nou", + "sending_code": "Se trimite codul" + }, + "already_have_an_account": "Ai deja un cont?", + "login": "Autentificare", + "create_account": "Creează un cont", + "new_to_plane": "Ești nou în Plane?", + "back_to_sign_in": "Înapoi la autentificare", + "resend_in": "Retrimite în {seconds} secunde", + "sign_in_with_unique_code": "Autentificare cu cod unic", + "forgot_password": "Ți-ai uitat parola?", + "username": { + "label": "Nume de utilizator", + "placeholder": "Introduceți numele de utilizator" + } + }, + "sign_up": { + "header": { + "label": "Creează un cont pentru a începe să-ți gestionezi activitatea împreună cu echipa ta.", + "step": { + "email": { + "header": "Înregistrare", + "sub_header": "" + }, + "password": { + "header": "Înregistrare", + "sub_header": "Înregistrează-te folosind o combinație email-parolă." + }, + "unique_code": { + "header": "Înregistrare", + "sub_header": "Înregistrează-te folosind un cod unic trimis pe adresa de email de mai sus." + } + } + }, + "errors": { + "password": { + "strength": "Setează o parolă puternică pentru a continua" + } + } + }, + "sign_in": { + "header": { + "label": "Autentifică-te pentru a începe să-ți gestionezi activitatea împreună cu echipa ta.", + "step": { + "email": { + "header": "Autentificare sau înregistrare", + "sub_header": "" + }, + "password": { + "header": "Autentificare sau înregistrare", + "sub_header": "Folosește combinația email-parolă pentru a te autentifica." + }, + "unique_code": { + "header": "Autentificare sau înregistrare", + "sub_header": "Autentifică-te folosind un cod unic trimis pe adresa de email de mai sus." + } + } + } + }, + "forgot_password": { + "title": "Resetează-ți parola", + "description": "Introdu adresa de email verificată a contului tău și îți vom trimite un link pentru resetarea parolei.", + "email_sent": "Am trimis link-ul de resetare pe adresa ta de email", + "send_reset_link": "Trimite link-ul de resetare", + "errors": { + "smtp_not_enabled": "Se pare că administratorul nu a activat SMTP, nu putem trimite link-ul de resetare a parolei" + }, + "toast": { + "success": { + "title": "Email trimis", + "message": "Verifică-ți căsuța de mesaje pentru link-ul de resetare a parolei. Dacă nu apare în câteva minute, verifică folderul de spam." + }, + "error": { + "title": "Eroare!", + "message": "Ceva nu a funcționat. Te rugăm să încerci din nou." + } + } + }, + "reset_password": { + "title": "Setează o parolă nouă", + "description": "Protejează-ți contul cu o parolă puternică" + }, + "set_password": { + "title": "Protejează-ți contul", + "description": "Setarea parolei te ajută să te autentifici în siguranță" + }, + "sign_out": { + "toast": { + "error": { + "title": "Eroare!", + "message": "Deconectarea a eșuat. Te rugăm să încerci din nou." + } + } + }, + "ldap": { + "header": { + "label": "Continuați cu {ldapProviderName}", + "sub_header": "Introduceți datele de autentificare {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/ro/automation.json b/packages/i18n/src/locales/ro/automation.json index 5ac573d9c04..509bbb11803 100644 --- a/packages/i18n/src/locales/ro/automation.json +++ b/packages/i18n/src/locales/ro/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Înapoi", "next": "Adaugă acțiune" + }, + "warning": { + "disabled_trigger_switching": "Nu poți schimba tipul declanșatorului după ce a fost creat" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Selectează o opțiune", "handler_name": { "add_comment": "Adaugă comentariu", - "change_property": "Schimbă proprietatea" + "change_property": "Schimbă proprietatea", + "run_script": "Rulează script" }, "configuration": { "label": "Configurare", @@ -89,6 +93,9 @@ "comment_block": { "title": "Adaugă comentariu" }, + "run_script_block": { + "title": "Rulează script" + }, "change_property_block": { "title": "Schimbă proprietatea" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Titlul automatizării", + "scope": "Domeniu", + "projects": "Proiecte", "last_run_on": "Ultima rulare pe", "created_on": "Creată pe", "last_updated_on": "Ultima actualizare pe", @@ -230,6 +239,35 @@ "description": "Automatizările sunt o modalitate de a automatiza sarcinile din proiectul tău.", "sub_description": "Recuperează 80% din timpul tău administrativ când folosești Automatizările." } + }, + "global_automations": { + "project_select": { + "label": "Selectează proiectele pe care să ruleze această automatizare", + "all_projects": { + "label": "Toate proiectele", + "description": "Automatizarea va rula pentru toate proiectele din spațiul de lucru." + }, + "select_projects": { + "label": "Selectează proiectele", + "description": "Automatizarea va rula pentru proiectele selectate din spațiul de lucru.", + "placeholder": "Selectează proiectele" + } + }, + "settings": { + "sidebar_label": "Automatizări", + "title": "Automatizări", + "description": "Standardizează procesele din întregul spațiu de lucru cu automatizări globale." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Proiect", + "multiple": "Multiple", + "all": "Toate" + } + } + } } } } diff --git a/packages/i18n/src/locales/ro/common.json b/packages/i18n/src/locales/ro/common.json index 9bb66805d49..e2b44ce87ec 100644 --- a/packages/i18n/src/locales/ro/common.json +++ b/packages/i18n/src/locales/ro/common.json @@ -17,6 +17,7 @@ "no": "Nu", "ok": "OK", "name": "Nume", + "unknown_user": "Utilizator necunoscut", "description": "Descriere", "search": "Caută", "add_member": "Adaugă membru", @@ -56,7 +57,8 @@ "no_worklogs": "Niciun jurnal de lucru încă", "no_history": "Niciun istoric încă" }, - "appearance": "Aspect", + "preferences": "Preferințe", + "language_and_time": "Limbă și oră", "notifications": "Notificări", "workspaces": "Spații de lucru", "create_workspace": "Creează spațiu de lucru", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Ceva nu a funcționat. Te rugăm să încerci din nou.", "load_more": "Încarcă mai mult", "select_or_customize_your_interface_color_scheme": "Selectați sau personalizați schema de culori a interfeței dvs.", + "timezone_setting": "Setarea actuală a fusului orar.", + "language_setting": "Alege limba folosită în interfața utilizatorului.", + "settings_moved_to_preferences": "Setările pentru fus orar și limbă au fost mutate în preferințe.", + "go_to_preferences": "Mergi la preferințe", "select_the_cursor_motion_style_that_feels_right_for_you": "Selectați stilul de mișcare al cursorului care vi se potrivește.", "theme": "Temă", "smooth_cursor": "Cursor lin", @@ -163,6 +169,7 @@ "project_created_successfully": "Proiect creat cu succes", "project_created_successfully_description": "Proiect creat cu succes. Poți începe să adaugi activități în el.", "project_name_already_taken": "Numele proiectului este deja folosit.", + "project_name_cannot_contain_special_characters": "Numele proiectului nu poate conține caractere speciale.", "project_identifier_already_taken": "Identificatorul proiectului este deja folosit.", "project_cover_image_alt": "Coperta proiectului", "name_is_required": "Numele este obligatoriu", @@ -207,6 +214,7 @@ "issues": "Activități", "cycles": "Cicluri", "modules": "Module", + "pages": "Documentație", "intake": "Cereri", "renew": "Reînnoiește", "preview": "Previzualizare", @@ -298,6 +306,7 @@ "start_date": "Data de început", "end_date": "Data de sfârșit", "due_date": "Data limită", + "target_date": "Data țintă", "estimate": "Estimare", "change_parent_issue": "Schimbă activitatea părinte", "remove_parent_issue": "Elimină activitatea părinte", @@ -354,6 +363,10 @@ "export": "Exportă", "member": "{count, plural, one{# membru} other{# membri}}", "new_password_must_be_different_from_old_password": "Parola nouă trebuie să fie diferită de parola veche", + "edited": "editat", + "bot": "Bot", + "settings_description": "Gestionează preferințele contului, spațiului de lucru și proiectelor tale într-un singur loc. Comută între file pentru a configura cu ușurință.", + "back_to_workspace": "Înapoi la spațiul de lucru", "upgrade_request": "Solicitați administratorului spațiului de lucru să facă upgrade.", "copied_to_clipboard": "Copiat în clipboard", "copied_to_clipboard_description": "URL-ul a fost copiat cu succes în clipboard", @@ -420,6 +433,9 @@ "modules": "Module", "labels": "Etichete", "label": "Etichetă", + "admins": "Administratori", + "users": "Utilizatori", + "guests": "Invitați", "assignees": "Responsabili", "assignee": "Responsabil", "created_by": "Creat de", @@ -449,6 +465,8 @@ "work_item": "Activitate", "work_items": "Activități", "sub_work_item": "Sub-activitate", + "views": "Perspective", + "pages": "Documentație", "add": "Adaugă", "warning": "Avertisment", "updating": "Se actualizează", @@ -494,7 +512,7 @@ "workspace_level": "La nivel de spațiu de lucru", "order_by": { "label": "Ordonează după", - "manual": "Manual", + "manual": "Manual - Rang", "last_created": "Ultima creată", "last_updated": "Ultima actualizată", "start_date": "Data de început", @@ -530,6 +548,7 @@ "continue": "Continuă", "resend": "Retrimite", "relations": "Relații", + "dependencies": "Dependențe", "errors": { "default": { "title": "Eroare!", @@ -561,11 +580,27 @@ "quarter": "Trimestru", "press_for_commands": "Apasă '/' pentru comenzi", "click_to_add_description": "Apasă pentru a adăuga descriere", + "on_track": "Pe drumul cel bun", + "off_track": "În afara traiectoriei", + "at_risk": "În pericol", + "timeline": "Cronologie", + "completion": "Finalizare", + "upcoming": "Viitor", + "completed": "Finalizat", + "in_progress": "În desfășurare", + "planned": "Planificat", + "paused": "Pauzat", "search": { "label": "Caută", "placeholder": "Tastează pentru a căuta", "no_matches_found": "Nu s-au găsit rezultate", - "no_matching_results": "Nicio potrivire găsită" + "no_matching_results": "Nicio potrivire găsită", + "min_chars": "Tastează cel puțin {count} caractere pentru a căuta", + "error": "Eroare la preluarea rezultatelor căutării", + "no_results": { + "title": "Nicio potrivire găsită", + "description": "Elimină criteriile de căutare pentru a vedea toate rezultatele" + } }, "actions": { "edit": "Editează", @@ -582,7 +617,9 @@ "clear_sorting": "Șterge sortarea", "show_weekends": "Arată sfârșiturile de săptămână", "enable": "Activează", - "disable": "Dezactivează" + "disable": "Dezactivează", + "copy_markdown": "Copiază markdown", + "reply": "Răspunde" }, "name": "Nume", "discard": "Renunță", @@ -595,6 +632,7 @@ "disabled": "Dezactivat", "mandate": "Împuternicire", "mandatory": "Obligatoriu", + "global": "Global", "yes": "Da", "no": "Nu", "please_wait": "Te rog așteaptă", @@ -604,6 +642,7 @@ "or": "sau", "next": "Înainte", "back": "Înapoi", + "retry": "Reîncearcă", "cancelling": "Se anulează", "configuring": "Se configurează", "clear": "Șterge", @@ -658,31 +697,27 @@ "deactivated_user": "Utilizator dezactivat", "apply": "Aplică", "applying": "Aplicând", - "users": "Utilizatori", - "admins": "Administratori", - "guests": "Invitați", - "on_track": "Pe drumul cel bun", - "off_track": "În afara traiectoriei", - "at_risk": "În pericol", - "timeline": "Cronologie", - "completion": "Finalizare", - "upcoming": "Viitor", - "completed": "Finalizat", - "in_progress": "În desfășurare", - "planned": "Planificat", - "paused": "Pauzat", + "overview": "Prezentare generală", "no_of": "Nr. de {entity}", "resolved": "Rezolvat", + "get_started": "Începe", "worklogs": "Jurnale de lucru", "project_updates": "Actualizări proiect", - "overview": "Prezentare generală", "workflows": "Fluxuri de lucru", "templates": "Șabloane", + "business": "Business", "members_and_teamspaces": "Membri și spații de echipă", + "recurring_work_items": "Elemente de lucru repetitive", + "milestones": "Jaloane", "open_in_full_screen": "Deschide {page} pe tot ecranul", "details": "Detalii", "project_structure": "Structura proiectului", - "custom_properties": "Proprietăți personalizate" + "custom_properties": "Proprietăți personalizate", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "axa-X", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane nu a pornit. Aceasta ar putea fi din cauza că unul sau mai multe servicii Plane au eșuat să pornească.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Alegeți View Logs din setup.sh și logurile Docker pentru a fi siguri." }, + "customize_navigation": "Personalizează navigarea", + "personal": "Personal", + "accordion_navigation_control": "Navigare acordeon bară laterală", + "horizontal_navigation_bar": "Navigare cu file", + "show_limited_projects_on_sidebar": "Afișează proiecte limitate în bara laterală", + "enter_number_of_projects": "Introdu numărul de proiecte", + "pin": "Fixează", + "unpin": "Anulează fixarea", "workspace_dashboards": "Dashboarduri", "pi_chat": "Plane AI", "in_app": "În-app", "forms": "Formulare", - "choose_workspace_for_integration": "Alegeți un spațiu de lucru pentru a conecta această aplicație", - "integrations_description": "Aplicațiile care funcționează cu Plane trebuie să se conecteze la un spațiu de lucru unde sunteți administrator.", - "create_a_new_workspace": "Creați un nou spațiu de lucru", - "no_workspaces_to_connect": "Nu există spații de lucru pentru a conecta", - "no_workspaces_to_connect_description": "Trebuie să creați un spațiu de lucru pentru a putea conecta integrări și modele", - "learn_more_about_workspaces": "Află mai multe despre spațiile de lucru", + "milestones": "Jaloane", + "milestones_description": "Jaloanele oferă un strat pentru a alinia activitățile către date comune de finalizare.", "file_upload": { "upload_text": "Click aici pentru a încărca fișierul", "drag_drop_text": "Trage și Plasează", "processing": "Se procesează", - "invalid": "Tip de fișier invalid", + "invalid_file_type": "Tip de fișier invalid", "missing_fields": "Câmpuri lipsă", "success": "{fileName} Încărcat!" }, - "project_name_cannot_contain_special_characters": "Numele proiectului nu poate conține caractere speciale.", "date": "Dată", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/ro/editor.json b/packages/i18n/src/locales/ro/editor.json index 4754ed8f844..09a1f4bd6fb 100644 --- a/packages/i18n/src/locales/ro/editor.json +++ b/packages/i18n/src/locales/ro/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Vă rugăm să introduceți o adresă URL validă." } + }, + "ai_block": { + "content": { + "placeholder": "Descrie conținutul acestui bloc", + "generated_here": "Conținutul tău AI va fi generat aici" + }, + "block_types": { + "placeholder": "Selectează tipul blocului", + "summarize_page": "Rezumă pagina", + "custom_prompt": "Prompt personalizat" + }, + "actions": { + "discard": "Renunță", + "generate": "Generează", + "generating": "Se generează", + "rewriting": "Se rescrie", + "rewrite": "Rescrie", + "use_this": "Folosește aceasta", + "refine": "Rafinează" + } } } diff --git a/packages/i18n/src/locales/ro/empty-state.json b/packages/i18n/src/locales/ro/empty-state.json index a326590d9ea..a613a68286b 100644 --- a/packages/i18n/src/locales/ro/empty-state.json +++ b/packages/i18n/src/locales/ro/empty-state.json @@ -249,10 +249,22 @@ "title": "Urmăriți foile de pontaj pentru toți membrii", "description": "Înregistrați timpul pe elemente de lucru pentru a vedea foi de pontaj detaliate pentru orice membru al echipei din proiecte." }, + "group_syncing": { + "title": "Încă nu există mapări de grup" + }, "template_setting": { "title": "Încă nu există șabloane", "description": "Reduceți timpul de configurare prin crearea de șabloane pentru proiecte, elemente de lucru și pagini — și începeți munca nouă în câteva secunde.", "cta_primary": "Creați șablon" + }, + "workflows": { + "title": "Încă nu există fluxuri de lucru", + "description": "Creați fluxuri de lucru pentru a gestiona progresul elementelor de lucru.", + "cta_primary": "Adaugă flux de lucru nou", + "states": { + "title": "Adaugă stări", + "description": "Selectează stările prin care progresează elementul de lucru." + } } } } diff --git a/packages/i18n/src/locales/ro/integration.json b/packages/i18n/src/locales/ro/integration.json index bfd34e82dfa..b6b92f49d16 100644 --- a/packages/i18n/src/locales/ro/integration.json +++ b/packages/i18n/src/locales/ro/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Eroare de server la încărcarea stărilor" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Conectează și sincronizează depozitele tale Bitbucket Data Center cu Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Validează tokenurile IdP externe pentru accesul la API.", @@ -302,6 +306,7 @@ "generic_error": "A apărut o eroare neașteptată în timpul procesării cererii tale", "connection_not_found": "Conexiunea solicitată nu a putut fi găsită", "multiple_connections_found": "Au fost găsite mai multe conexiuni când se aștepta doar una", + "cannot_create_multiple_connections": "Ai conectat deja organizația ta cu un spațiu de lucru. Te rugăm să deconectezi conexiunea existentă înainte de a conecta una nouă.", "installation_not_found": "Instalarea solicitată nu a putut fi găsită", "user_not_found": "Utilizatorul solicitat nu a putut fi găsit", "error_fetching_token": "Nu s-a putut prelua tokenul de autentificare", @@ -315,6 +320,7 @@ "pulling": "Se extrag", "timed_out": "Timp expirat", "pulled": "Extras", + "progressing": "În desfășurare", "transforming": "Se transformă", "transformed": "Transformat", "pushing": "Se încarcă", diff --git a/packages/i18n/src/locales/ro/module.json b/packages/i18n/src/locales/ro/module.json index d4656dcafe5..9bc93125b9b 100644 --- a/packages/i18n/src/locales/ro/module.json +++ b/packages/i18n/src/locales/ro/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modul} other {Module}}", - "no_module": "Niciun modul" + "no_module": "Niciun modul", + "select": "Adaugă module" } } diff --git a/packages/i18n/src/locales/ro/navigation.json b/packages/i18n/src/locales/ro/navigation.json index abd064c42c1..e56d5aa864f 100644 --- a/packages/i18n/src/locales/ro/navigation.json +++ b/packages/i18n/src/locales/ro/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Niciun rezultat găsit" + } + } + }, "sidebar": { + "stickies": "Notițe", + "your_work": "Munca ta", "projects": "Proiecte", "pages": "Documentație", "new_work_item": "Activitate nouă", "home": "Acasă", - "your_work": "Munca ta", "inbox": "Căsuță de mesaje", "workspace": "Spațiu de lucru", "views": "Perspective", @@ -21,14 +29,6 @@ "epics": "Epice", "upgrade_plan": "Actualizare plan", "plane_pro": "Plane Pro", - "business": "Business", - "recurring_work_items": "Elemente de lucru repetitive" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Niciun rezultat găsit" - } - } + "business": "Business" } } diff --git a/packages/i18n/src/locales/ro/page.json b/packages/i18n/src/locales/ro/page.json index 43346f56cd8..d8f1602a27f 100644 --- a/packages/i18n/src/locales/ro/page.json +++ b/packages/i18n/src/locales/ro/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Conectează pagini", - "show_wiki_pages": "Afișează pagini Wiki", - "link_pages_to": "Conectează pagini la", - "linked_pages": "Pagini conectate", - "no_description": "Această pagină este goală. Scrie ceva aici și vezi-l aici ca acest spațiu rezervat", - "toasts": { - "link": { - "success": { - "title": "Pagini actualizate", - "message": "Pagini actualizate cu succes" - }, - "error": { - "title": "Pagini năo actualizate", - "message": "Pagini năo pot fi actualizate" - } - }, - "remove": { - "success": { - "title": "Pagini șterse", - "message": "Pagini șterse cu succes" - }, - "error": { - "title": "Pagini năo șterse", - "message": "Pagini năo pot fi șterse" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Imagini lipsă", "description": "Adăugați imagini pentru a le vedea aici." } + }, + "comments": { + "label": "Comentarii", + "empty_state": { + "title": "Niciun comentariu", + "description": "Adaugă comentarii pentru a le vedea aici." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Numele notiței nu poate avea mai mult de 100 de caractere.", + "already_exists": "Există deja o notiță fără descriere" + }, + "created": { + "title": "Notiță creată", + "message": "Notița a fost creată cu succes" + }, + "not_created": { + "title": "Notița nu a fost creată", + "message": "Notița nu a putut fi creată" + }, + "updated": { + "title": "Notiță actualizată", + "message": "Notița a fost actualizată cu succes" + }, + "not_updated": { + "title": "Notița nu a fost actualizată", + "message": "Notița nu a putut fi actualizată" + }, + "removed": { + "title": "Notiță eliminată", + "message": "Notița a fost eliminată cu succes" + }, + "not_removed": { + "title": "Notița nu a fost eliminată", + "message": "Notița nu a putut fi eliminată" } }, "open_button": "Deschide panoul de navigare", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Mută", + "loading": "Se mută" + }, + "cannot_move_to_teamspace": "Paginile private și partajate nu pot fi mutate într-un spațiu de echipă.", "placeholders": { + "workspace_to_all": "Caută proiecte și spații de echipă", + "workspace_to_project": "Caută proiecte", + "project_to_all": "Caută proiecte și spații de echipă", + "project_to_project": "Caută proiecte", "project_to_all_with_wiki": "Caută colecții wiki, proiecte și spații de echipă", "project_to_project_with_wiki": "Caută colecții wiki și proiecte" }, "toasts": { + "success": { + "title": "Succes!", + "message": "Pagină mutată cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Pagina nu a putut fi mutată. Te rugăm să încerci din nou mai târziu." + }, "collection_error": { "title": "Mutată în wiki", "message": "Pagina a fost mutată în wiki, dar nu a putut fi adăugată la colecția selectată. Rămâne în General." diff --git a/packages/i18n/src/locales/ro/project-settings.json b/packages/i18n/src/locales/ro/project-settings.json index 50f8ff779b9..8472198dc2b 100644 --- a/packages/i18n/src/locales/ro/project-settings.json +++ b/packages/i18n/src/locales/ro/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Membri", "project_lead": "Lider de proiect", + "project_lead_description": "Selectați liderul proiectului.", "default_assignee": "Persoană atribuită implicit", + "default_assignee_description": "Selectați persoana implicită atribuită proiectului.", + "project_subscribers": "Abonații proiectului", + "project_subscribers_description": "Selectați membrii care vor primi notificări pentru acest proiect.", "guest_super_permissions": { "title": "Acordă acces la perspectivă pentru toți utilizatorii de tip Invitat:", "sub_heading": "Aceasta va permite utilizatorilor din categoria Invitați să vadă toate activitățile din proiect." @@ -30,13 +34,11 @@ "title": "Invită membri", "sub_heading": "Invită membri să lucreze la proiectul tău.", "select_co_worker": "Selectează colegul de echipă" - }, - "project_lead_description": "Selectați liderul proiectului.", - "default_assignee_description": "Selectați persoana implicită atribuită proiectului.", - "project_subscribers": "Abonații proiectului", - "project_subscribers_description": "Selectați membrii care vor primi notificări pentru acest proiect." + } }, "states": { + "heading": "Stări", + "description": "Definește și personalizează stările fluxului de lucru pentru a urmări progresul activităților tale.", "describe_this_state_for_your_members": "Descrie această stare pentru membrii tăi.", "empty_state": { "title": "Nicio stare disponibilă pentru grupul {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etichete", + "description": "Creează etichete personalizate pentru a categoriza și organiza activitățile tale", "label_title": "Titlu etichetă", "label_title_is_required": "Titlul etichetei este obligatoriu", "label_max_char": "Numele etichetei nu trebuie să depășească 255 de caractere", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Estimări", + "description": "Te ajută să comunici complexitatea și volumul de muncă al echipei.", "label": "Estimări", "title": "Activează estimările pentru proiectul meu", - "description": "Te ajută să comunici complexitatea și volumul de muncă al echipei.", + "enable_description": "Te ajută să comunici complexitatea și volumul de muncă al echipei.", "no_estimate": "Fără estimare", "new": "Noul sistem de estimare", "create": { @@ -112,6 +118,16 @@ "title": "Reordonarea estimărilor a eșuat", "message": "Nu am putut reordona estimările, te rugăm să încerci din nou" } + }, + "switch": { + "success": { + "title": "Sistem de estimări creat", + "message": "Creat și activat cu succes" + }, + "error": { + "title": "Eroare", + "message": "Ceva a mers greșit" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatizări", + "heading": "Automatizări", + "description": "Configurează acțiuni automate pentru a-ți eficientiza fluxul de lucru al proiectului și a reduce sarcinile manuale.", "auto-archive": { "title": "Auto-arhivează activitățile finalizate", "description": "Plane va arhiva automat activitățile care au fost finalizate sau anulate.", @@ -194,90 +212,116 @@ "description": "Configurează GitHub și alte integrări pentru a sincroniza elementele de lucru ale proiectului tău." } }, - "cycles": { - "auto_schedule": { - "heading": "Programare automată a ciclurilor", - "description": "Mențineți ciclurile în mișcare fără configurare manuală.", - "tooltip": "Creați automat cicluri noi pe baza programului ales.", - "edit_button": "Editează", - "form": { - "cycle_title": { - "label": "Titlul ciclului", - "placeholder": "Titlu", - "tooltip": "Titlul va fi completat cu numere pentru ciclurile următoare. De exemplu: Design - 1/2/3", - "validation": { - "required": "Titlul ciclului este obligatoriu", - "max_length": "Titlul nu trebuie să depășească 255 de caractere" - } - }, - "cycle_duration": { - "label": "Durata ciclului", - "unit": "Săptămâni", - "validation": { - "required": "Durata ciclului este obligatorie", - "min": "Durata ciclului trebuie să fie de cel puțin 1 săptămână", - "max": "Durata ciclului nu poate depăși 30 de săptămâni", - "positive": "Durata ciclului trebuie să fie pozitivă" - } - }, - "cooldown_period": { - "label": "Perioadă de răcire", - "unit": "zile", - "tooltip": "Pauză între cicluri înainte de începerea următorului.", - "validation": { - "required": "Perioada de răcire este obligatorie", - "negative": "Perioada de răcire nu poate fi negativă" - } - }, - "start_date": { - "label": "Ziua de început a ciclului", - "validation": { - "required": "Data de început este obligatorie", - "past": "Data de început nu poate fi în trecut" - } + "workflows": { + "toggle": { + "title": "Activează fluxurile de lucru", + "description": "Setează fluxuri de lucru pentru a controla mișcarea activităților", + "no_states_tooltip": "Nu există stări adăugate în fluxul de lucru.", + "no_work_item_types_tooltip": "Nu există tipuri de activități adăugate în fluxul de lucru.", + "no_states_or_work_item_types_tooltip": "Nu există stări sau tipuri de activități adăugate în fluxul de lucru.", + "toast": { + "loading": { + "enabling": "Se activează fluxurile de lucru", + "disabling": "Se dezactivează fluxurile de lucru" }, - "number_of_cycles": { - "label": "Numărul de cicluri viitoare", - "validation": { - "required": "Numărul de cicluri este obligatoriu", - "min": "Este necesar cel puțin 1 ciclu", - "max": "Nu se pot programa mai mult de 3 cicluri" - } + "success": { + "title": "Succes!", + "message": "Fluxurile de lucru au fost activate cu succes." }, - "auto_rollover": { - "label": "Transfer automat al elementelor de lucru", - "tooltip": "În ziua în care se completează un ciclu, mutați toate elementele de lucru nefinalizate în ciclul următor." + "error": { + "title": "Eroare!", + "message": "Activarea fluxurilor de lucru a eșuat. Te rugăm să încerci din nou." + } + } + }, + "heading": "Fluxuri de lucru", + "description": "Automatizează tranzițiile activităților și setează reguli pentru a controla modul în care sarcinile se deplasează prin fluxul proiectului tău.", + "add_button": "Adaugă flux de lucru nou", + "search": "Caută fluxuri de lucru", + "detail": { + "define": "Definește fluxul de lucru", + "add_states": "Adaugă stări", + "unmapped_states": { + "title": "Stări nemapate detectate", + "description": "Unele activități pentru tipurile selectate sunt în prezent în stări care nu există în acest flux de lucru.", + "note": "Dacă activezi acest flux de lucru, aceste elemente se vor muta automat în starea inițială a acestui flux de lucru.", + "label": "Stări lipsă", + "tooltip": "Unele activități sunt în stări care nu sunt mapate la acest flux de lucru. Deschide fluxul de lucru pentru a revizui." + } + }, + "select_states": { + "empty_state": { + "title": "Toate stările sunt utilizate", + "description": "Toate stările definite pentru acest proiect sunt deja prezente în fluxul tău de lucru curent." + } + }, + "default_footer": { + "fallback_message": "Acest flux de lucru se aplică oricărui tip de activitate care nu este atribuit unui flux de lucru." + }, + "create": { + "heading": "Creează flux de lucru nou", + "name": { + "placeholder": "Adaugă un nume unic", + "validation": { + "max_length": "Numele trebuie să aibă mai puțin de 255 de caractere", + "required": "Numele este obligatoriu", + "invalid": "Numele poate conține doar litere, cifre, spații, cratime și apostrofe" } }, - "toast": { - "toggle": { - "loading_enable": "Se activează programarea automată a ciclurilor", - "loading_disable": "Se dezactivează programarea automată a ciclurilor", - "success": { - "title": "Succes!", - "message": "Programarea automată a ciclurilor a fost comutată cu succes." - }, - "error": { - "title": "Eroare!", - "message": "Nu s-a putut comuta programarea automată a ciclurilor." - } - }, - "save": { - "loading": "Se salvează configurația programării automate a ciclurilor", - "success": { - "title": "Succes!", - "message_create": "Configurația programării automate a ciclurilor a fost salvată cu succes.", - "message_update": "Configurația programării automate a ciclurilor a fost actualizată cu succes." - }, - "error": { - "title": "Eroare!", - "message_create": "Nu s-a putut salva configurația programării automate a ciclurilor.", - "message_update": "Nu s-a putut actualiza configurația programării automate a ciclurilor." - } + "description": { + "placeholder": "Adaugă o scurtă descriere", + "validation": { + "invalid": "Descrierea poate conține doar litere, cifre, spații, cratime și apostrofe" } + }, + "work_item_type": { + "label": "Tip de activitate" + }, + "success": { + "title": "Succes!", + "message": "Flux de lucru creat cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Crearea fluxului de lucru a eșuat. Te rugăm să încerci din nou." + } + }, + "update": { + "success": { + "title": "Succes!", + "message": "Flux de lucru actualizat cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Actualizarea fluxului de lucru a eșuat. Te rugăm să încerci din nou." + } + }, + "delete": { + "loading": "Se șterge fluxul de lucru", + "success": { + "title": "Succes!", + "message": "Flux de lucru șters cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Ștergerea fluxului de lucru a eșuat. Te rugăm să încerci din nou." + } + }, + "add_states": { + "success": { + "title": "Succes!", + "message": "Stări adăugate cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Adăugarea stărilor a eșuat. Te rugăm să încerci din nou." } } }, + "work_item_types": { + "heading": "Tipuri de activități", + "description": "Creează și personalizează diferite tipuri de activități cu proprietăți unice" + }, "features": { "cycles": { "title": "Cicluri", @@ -385,6 +429,98 @@ "success": "Funcționalitatea proiectului a fost actualizată cu succes.", "error": "Ceva a mers greșit la actualizarea funcționalității proiectului. Vă rugăm să încercați din nou." } + }, + "project_updates": { + "heading": "Actualizări proiect", + "description": "Urmărire consolidată și monitorizare a progresului pentru acest proiect" + }, + "templates": { + "heading": "Șabloane", + "description": "Economisește 80% din timpul petrecut creând proiecte, activități și pagini atunci când folosești șabloane." + }, + "cycles": { + "auto_schedule": { + "heading": "Programare automată a ciclurilor", + "description": "Mențineți ciclurile în mișcare fără configurare manuală.", + "tooltip": "Creați automat cicluri noi pe baza programului ales.", + "edit_button": "Editează", + "form": { + "cycle_title": { + "label": "Titlul ciclului", + "placeholder": "Titlu", + "tooltip": "Titlul va fi completat cu numere pentru ciclurile următoare. De exemplu: Design - 1/2/3", + "validation": { + "required": "Titlul ciclului este obligatoriu", + "max_length": "Titlul nu trebuie să depășească 255 de caractere" + } + }, + "cycle_duration": { + "label": "Durata ciclului", + "unit": "Săptămâni", + "validation": { + "required": "Durata ciclului este obligatorie", + "min": "Durata ciclului trebuie să fie de cel puțin 1 săptămână", + "max": "Durata ciclului nu poate depăși 30 de săptămâni", + "positive": "Durata ciclului trebuie să fie pozitivă" + } + }, + "cooldown_period": { + "label": "Perioadă de răcire", + "unit": "zile", + "tooltip": "Pauză între cicluri înainte de începerea următorului.", + "validation": { + "required": "Perioada de răcire este obligatorie", + "negative": "Perioada de răcire nu poate fi negativă" + } + }, + "start_date": { + "label": "Ziua de început a ciclului", + "validation": { + "required": "Data de început este obligatorie", + "past": "Data de început nu poate fi în trecut" + } + }, + "number_of_cycles": { + "label": "Numărul de cicluri viitoare", + "validation": { + "required": "Numărul de cicluri este obligatoriu", + "min": "Este necesar cel puțin 1 ciclu", + "max": "Nu se pot programa mai mult de 3 cicluri" + } + }, + "auto_rollover": { + "label": "Transfer automat al elementelor de lucru", + "tooltip": "În ziua în care se completează un ciclu, mutați toate elementele de lucru nefinalizate în ciclul următor." + } + }, + "toast": { + "toggle": { + "loading_enable": "Se activează programarea automată a ciclurilor", + "loading_disable": "Se dezactivează programarea automată a ciclurilor", + "success": { + "title": "Succes!", + "message": "Programarea automată a ciclurilor a fost comutată cu succes." + }, + "error": { + "title": "Eroare!", + "message": "Nu s-a putut comuta programarea automată a ciclurilor." + } + }, + "save": { + "loading": "Se salvează configurația programării automate a ciclurilor", + "success": { + "title": "Succes!", + "message_create": "Configurația programării automate a ciclurilor a fost salvată cu succes.", + "message_update": "Configurația programării automate a ciclurilor a fost actualizată cu succes." + }, + "error": { + "title": "Eroare!", + "message_create": "Nu s-a putut salva configurația programării automate a ciclurilor.", + "message_update": "Nu s-a putut actualiza configurația programării automate a ciclurilor." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/ro/project.json b/packages/i18n/src/locales/ro/project.json index 1d4f038674f..b50982c6adf 100644 --- a/packages/i18n/src/locales/ro/project.json +++ b/packages/i18n/src/locales/ro/project.json @@ -16,10 +16,15 @@ "remove_filters_to_see_all_cycles": "Elimină filtrele pentru a vedea toate ciclurile", "remove_search_criteria_to_see_all_cycles": "Elimină criteriile de căutare pentru a vedea toate ciclurile", "only_completed_cycles_can_be_archived": "Doar ciclurile finalizate pot fi arhivate", + "start_date": "Data de început", + "end_date": "Data de sfârșit", + "in_your_timezone": "În fusul tău orar", "transfer_work_items": "Transferați {count} elemente de lucru", "transfer": { "no_cycles_available": "Nu există alte cicluri disponibile pentru a transfera elemente de lucru." }, + "date_range": "Interval de date", + "add_date": "Adaugă data", "active_cycle": { "label": "Ciclu activ", "progress": "Progres", @@ -131,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Salvează perspective filtrate pentru proiectul tău. Creează câte ai nevoie", + "description": "Perspectivele sunt seturi de filtre salvate pe care le folosești frecvent sau la care vrei acces rapid. Toți colegii tăi dintr-un proiect pot vedea perspectivele tuturor și pot alege ce li se potrivește cel mai bine.", + "primary_button": { + "text": "Creează prima ta perspectivă", + "comic": { + "title": "Perspectivele funcționează pe baza proprietăților activităților.", + "description": "Poți crea o perspectivă de aici, cu oricâte proprietăți și filtre consideri necesare." + } + }, + "filter": { + "title": "Nicio perspectivă potrivită", + "description": "Nicio perspectivă nu se potrivește criteriilor de căutare.\n Creează o nouă perspectivă în schimb." + } + }, + "no_archived_issues": { + "title": "Nicio activitate arhivată încă", + "description": "Manual sau prin automatizare, poți arhiva activitățile care sunt finalizate sau anulate. Găsește-le aici odată arhivate.", + "primary_button": { + "text": "Setează automatizare" + } + }, + "issues_empty_filter": { + "title": "Nu s-au găsit activități care să corespundă filtrelor aplicate", + "secondary_button": { + "text": "Șterge toate filtrele" + } + }, + "public": { + "title": "Nicio pagină publică încă", + "description": "Vezi paginile distribuite cu toată lumea din proiectul tău chiar aici.", + "primary_button": { + "text": "Creează prima ta pagină" + } + }, + "archived": { + "title": "Nicio pagină arhivată încă", + "description": "Arhivează paginile care nu îți sunt pe radar. Accesează-le aici când ai nevoie." + }, + "shared": { + "title": "Nicio pagină partajată încă", + "description": "Paginile pe care alții le-au partajat cu tine vor apărea aici." + } + }, + "delete_view": { + "title": "Sunteți sigur că doriți să ștergeți această vizualizare?", + "content": "Dacă confirmați, toate opțiunile de sortare, filtrare și afișare + aspectul pe care l-ați ales pentru această vizualizare vor fi șterse permanent fără nicio modalitate de a le restaura." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -212,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Salvează perspective filtrate pentru proiectul tău. Creează câte ai nevoie", - "description": "Perspectivele sunt seturi de filtre salvate pe care le folosești frecvent sau la care vrei acces rapid. Toți colegii tăi dintr-un proiect pot vedea perspectivele tuturor și pot alege ce li se potrivește cel mai bine.", - "primary_button": { - "text": "Creează prima ta perspectivă", - "comic": { - "title": "Perspectivele funcționează pe baza proprietăților activităților.", - "description": "Poți crea o perspectivă de aici, cu oricâte proprietăți și filtre consideri necesare." - } - } - }, - "filter": { - "title": "Nicio perspectivă potrivită", - "description": "Nicio perspectivă nu se potrivește criteriilor de căutare.\n Creează o nouă perspectivă în schimb." - } - }, - "delete_view": { - "title": "Sunteți sigur că doriți să ștergeți această vizualizare?", - "content": "Dacă confirmați, toate opțiunile de sortare, filtrare și afișare + aspectul pe care l-ați ales pentru această vizualizare vor fi șterse permanent fără nicio modalitate de a le restaura." - } - }, "project_page": { "empty_state": { "general": { @@ -326,6 +359,13 @@ "manual": "Manual" } }, + "project_members": { + "full_name": "Nume complet", + "display_name": "Nume afișat", + "email": "Email", + "joining_date": "Data înscrierii", + "role": "Rol" + }, "project": { "members_import": { "title": "Importă membri din CSV", diff --git a/packages/i18n/src/locales/ro/settings.json b/packages/i18n/src/locales/ro/settings.json index 3fca4132ab1..dee69bd98fd 100644 --- a/packages/i18n/src/locales/ro/settings.json +++ b/packages/i18n/src/locales/ro/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Preferințe", + "description": "Personalizează experiența aplicației așa cum lucrezi" + }, "notifications": { + "heading": "Notificări prin e-mail", + "description": "Rămâi la curent cu activitățile la care ești abonat. Activează această opțiune pentru a primi notificări.", "select_default_view": "Selectează vizualizarea implicită", "compact": "Compact", "full": "Ecran complet" + }, + "security": { + "heading": "Securitate" + }, + "api_tokens": { + "title": "Tokenuri de acces personale", + "description": "Generează tokenuri API securizate pentru a integra datele tale cu sisteme și aplicații externe." + }, + "activity": { + "heading": "Activitate", + "description": "Urmărește acțiunile și modificările tale recente din toate proiectele și activitățile." + }, + "connections": { + "title": "Conexiuni", + "heading": "Conexiuni", + "description": "Gestionează setările conexiunilor spațiului tău de lucru." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Securitate", "activity": "Activitate", - "appearance": "Aspect", + "preferences": "Preferințe", "notifications": "Notificări", + "api-tokens": "Tokenuri de acces personale", "connections": "Conexiuni" }, "tabs": { diff --git a/packages/i18n/src/locales/ro/template.json b/packages/i18n/src/locales/ro/template.json index aac1c63f412..a80ef4f5954 100644 --- a/packages/i18n/src/locales/ro/template.json +++ b/packages/i18n/src/locales/ro/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Șabloane", "description": "Economisește 80% din timpul petrecut pentru crearea proiectelor, a elementelor de lucru și a paginilor când folosești șabloane.", + "new_project_template": "Șablon de proiect nou", + "new_work_item_template": "Șablon de activitate nou", + "new_page_template": "Șablon de pagină nou", "options": { "project": { "label": "Șabloane de proiect" @@ -157,6 +160,14 @@ "required": "Cel puțin un cuvânt cheie este obligatoriu" } }, + "website": { + "label": "URL site web", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL invalid", + "maxLength": "URL-ul trebuie să fie mai mic de 800 de caractere" + } + }, "company_name": { "label": "Numele companiei", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Adresa email-ului este invalidă", - "required": "Adresa email-ului este obligatorie", "maxLength": "Adresa email-ului trebuie să fie mai mică de 255 de caractere" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Nu există etichete încă. Creează etichete pentru a ajuta la organizarea și filtrarea elementelor de lucru în proiectul tău." }, + "no_modules": { + "description": "Nu există module încă. Organizează munca în sub-proiecte cu lideri și responsabili dedicați." + }, "no_work_items": { "description": "Nu există elemente de lucru încă. Adaugă unul pentru a structura mai bine munca ta." }, diff --git a/packages/i18n/src/locales/ro/tour.json b/packages/i18n/src/locales/ro/tour.json index 26717dcdac0..c3735c973cd 100644 --- a/packages/i18n/src/locales/ro/tour.json +++ b/packages/i18n/src/locales/ro/tour.json @@ -110,6 +110,12 @@ "description": "Un element de lucru poate fi amânat pentru a-l revizui mai târziu. Va fi mutat la sfârșitul listei tale de cereri deschise." } }, + "mcp_connectors": { + "step_zero": { + "title": "Oprește schimbarea filelor. Conectează-ți lumea.", + "description": "Conectează GitHub, Slack pentru a urmări PR-urile și a rezuma conversațiile direct în Plane AI." + } + }, "navigation": { "modal": { "title": "Navigare, reimaginată", diff --git a/packages/i18n/src/locales/ro/update.json b/packages/i18n/src/locales/ro/update.json index 83a58cb94b3..768f0d33812 100644 --- a/packages/i18n/src/locales/ro/update.json +++ b/packages/i18n/src/locales/ro/update.json @@ -1,33 +1,16 @@ { "updates": { + "progress": { + "title": "Progres", + "since_last_update": "De la ultima actualizare", + "comments": "{count, plural, one{# comentariu} other{# comentarii}}" + }, "add_update": "Adaugă actualizare", "add_update_placeholder": "Adaugă actualizarea ta aici", "empty": { "title": "Încă nu există actualizări", "description": "Poți vedea actualizările aici." }, - "delete": { - "title": "Șterge actualizare", - "confirmation": "Ești sigur că vrei să ștergi această actualizare? Această acțiune este ireversibilă.", - "success": { - "title": "Actualizare ștearsă", - "message": "Actualizarea a fost ștearsă cu succes." - }, - "error": { - "title": "Actualizare năo ștearsă", - "message": "Actualizarea nu a putut fi ștearsă." - } - }, - "update": { - "success": { - "title": "Actualizare actualizată", - "message": "Actualizarea a fost actualizată cu succes." - }, - "error": { - "title": "Actualizare năo actualizată", - "message": "Actualizarea nu a putut fi actualizată." - } - }, "reaction": { "create": { "success": { @@ -50,11 +33,6 @@ } } }, - "progress": { - "title": "Progres", - "since_last_update": "De la ultima actualizare", - "comments": "{count, plural, one{# comentariu} other{# comentarii}}" - }, "create": { "success": { "title": "Actualizare creată", @@ -64,6 +42,28 @@ "title": "Actualizare năo creată", "message": "Actualizarea nu a putut fi creată." } + }, + "delete": { + "title": "Șterge actualizare", + "confirmation": "Ești sigur că vrei să ștergi această actualizare? Această acțiune este ireversibilă.", + "success": { + "title": "Actualizare ștearsă", + "message": "Actualizarea a fost ștearsă cu succes." + }, + "error": { + "title": "Actualizare năo ștearsă", + "message": "Actualizarea nu a putut fi ștearsă." + } + }, + "update": { + "success": { + "title": "Actualizare actualizată", + "message": "Actualizarea a fost actualizată cu succes." + }, + "error": { + "title": "Actualizare năo actualizată", + "message": "Actualizarea nu a putut fi actualizată." + } } } } diff --git a/packages/i18n/src/locales/ro/wiki.json b/packages/i18n/src/locales/ro/wiki.json index 67d0e2632a0..a59e9c934c0 100644 --- a/packages/i18n/src/locales/ro/wiki.json +++ b/packages/i18n/src/locales/ro/wiki.json @@ -33,7 +33,7 @@ "submit": "Șterge colecția" }, "header": { - "add_page": "Adaugă pagină" + "add_page": "Adaugă o pagină" }, "menu": { "create_new_page": "Creează o pagină nouă", @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Pagina nu a putut fi creată sau adăugată în colecție. Te rugăm să încerci din nou.", "collection_link_copied": "Linkul colecției a fost copiat în clipboard." } + }, + "wiki": { + "upgrade_flow": { + "title": "Actualizează pentru a debloca Wiki", + "description": "Deblochează pagini publice, istoric de versiuni, pagini partajate, colaborare în timp real și pagini ale spațiului de lucru pentru wiki-uri, documente la nivel de companie și baze de cunoștințe cu Plane Pro.", + "upgrade_button": { + "text": "Actualizează" + }, + "learn_more_button": { + "text": "Află mai multe" + }, + "download_button": { + "text": "Descarcă datele", + "loading": "Se descarcă" + }, + "tabs": { + "nested_pages": "Pagini imbricate", + "add_embeds": "Adaugă încorporări", + "publish_pages": "Publică pagini", + "comments": "Comentarii" + } + }, + "nested_pages_download_banner": { + "title": "Paginile imbricate necesită un plan plătit. Actualizează pentru a debloca." + } } } diff --git a/packages/i18n/src/locales/ro/work-item-type.json b/packages/i18n/src/locales/ro/work-item-type.json index 3f1cda5f400..e1dbf6d5518 100644 --- a/packages/i18n/src/locales/ro/work-item-type.json +++ b/packages/i18n/src/locales/ro/work-item-type.json @@ -3,11 +3,25 @@ "label": "Tipuri de Elemente de Lucru", "label_lowercase": "tipuri de elemente de lucru", "settings": { - "title": "Tipuri de Elemente de Lucru", + "description": "Personalizează și adaugă propriile proprietăți pentru a le adapta nevoilor echipei tale.", + "cant_delete_default_message": "Nu se poate șterge acest tip de element de lucru deoarece este setat ca tip implicit pentru acest proiect.", + "set_as_default": "Setează ca implicit", + "cant_set_default_inactive_message": "Activează acest tip înainte de a-l seta ca implicit", + "set_default_confirmation": { + "title": "Setează ca tip implicit de element de lucru", + "description": "Setarea {name} ca implicit îl va importa în toate proiectele din acest spațiu de lucru. Toate elementele de lucru noi vor folosi acest tip în mod implicit.", + "confirm_button": "Setează ca implicit" + }, "properties": { "title": "Proprietăți personalizate", + "description": "Creează și personalizează proprietăți.", "tooltip": "Fiecare tip de element de lucru vine cu un set implicit de proprietăți precum Titlu, Descriere, Responsabil, Stare, Prioritate, Data de început, Data scadentă, Modul, Ciclu etc. De asemenea, poți personaliza și adăuga propriile proprietăți pentru a le adapta nevoilor echipei tale.", "add_button": "Adaugă proprietate nouă", + "project": { + "add_button": { + "import_from_workspace": "Importă din spațiul de lucru" + } + }, "dropdown": { "label": "Tip de proprietate", "placeholder": "Selectează tipul" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Creează o proprietate personalizată nouă", + "update": "Actualizează proprietatea personalizată" + }, "form": { "display_name": { "placeholder": "Titlu" @@ -213,9 +231,50 @@ "description": "Noile proprietăți pe care le adaugi pentru acest tip de element de lucru vor apărea aici." } }, + "types": { + "title": "Tipuri", + "description": "Creează și personalizează tipuri de activități cu proprietăți.", + "sort_options": { + "project_count": "Numărul de proiecte din care face parte" + }, + "filter_options": { + "show_active": "Afișează active", + "show_inactive": "Afișează inactive" + }, + "project": { + "add_button": { + "create_new": "Creează nou", + "import_from_workspace": "Importă din spațiul de lucru" + }, + "banner": { + "with_access": "Activează tipurile de activități pentru a importa tipuri de la nivelul spațiului de lucru", + "without_access": "Tipurile de activități sunt dezactivate. Contactează administratorul spațiului de lucru pentru a le activa în setările spațiului de lucru." + } + } + }, + "linked_properties": { + "title": "Proprietăți personalizate", + "add_button": "Adaugă proprietăți", + "modal": { + "title": "Adaugă proprietăți", + "empty": { + "title": "Nu există proprietăți disponibile", + "description": "Toate proprietățile au fost deja conectate la acest tip." + } + }, + "unlink_confirmation": { + "title": "Deconectează proprietatea", + "description": "Deconectarea acestei proprietăți va șterge permanent toate valorile sale din fiecare activitate care folosește acest tip. Această acțiune nu poate fi anulată.", + "input_label": "Tastează", + "input_label_suffix": "pentru a continua:", + "confirm": "Deconectează proprietatea", + "loading": "Se deconectează" + } + }, "item_delete_confirmation": { "title": "Șterge acest tip", "description": "Ștergerea tipurilor poate duce la pierderea datelor existente.", + "can_disable_warning": "Doriți să dezactivați tipul în schimb?", "primary_button": "Da, șterge-l", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Nu se poate șterge tipul implicit de element de lucru", "cannot_delete_work_item_type_with_associated_work_items": "Nu se poate șterge tipul de element de lucru cu elemente de lucru asociate" - }, - "can_disable_warning": "Doriți să dezactivați tipul în schimb?" - }, - "cant_delete_default_message": "Nu se poate șterge acest tip de element de lucru deoarece este setat ca tip implicit pentru acest proiect.", - "set_as_default": "Setează ca implicit", - "cant_set_default_inactive_message": "Activează acest tip înainte de a-l seta ca implicit", - "set_default_confirmation": { - "title": "Setează ca tip implicit de element de lucru", - "description": "Setarea {name} ca implicit îl va importa în toate proiectele din acest spațiu de lucru. Toate elementele de lucru noi vor folosi acest tip în mod implicit.", - "confirm_button": "Setează ca implicit" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Eroare!", "message": { + "default": "Crearea tipului de activitate a eșuat. Te rugăm să încerci din nou!", "conflict": "Tipul {name} există deja. Alegeți un alt nume." } } @@ -269,6 +320,7 @@ "error": { "title": "Eroare!", "message": { + "default": "Actualizarea tipului de activitate a eșuat. Te rugăm să încerci din nou!", "conflict": "Tipul {name} există deja. Alegeți un alt nume." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Eroare de validare!", + "title": "Salvarea va rupe legăturile existente", "content": { "intro": "Tipul de element de lucru {workItemTypeName} are:", - "parent_items": "{count, plural, one {element de lucru părinte} few {elemente de lucru părinte} other {elemente de lucru părinte}}", + "parent_items": "{count, plural, one {Se va elimina # legătură părinte} few {Se vor elimina # legături părinte} other {Se vor elimina # de legături părinte}}.", "child_items": "{count, plural, one {sub-element de lucru} few {sub-elemente de lucru} other {sub-elemente de lucru}}", "parent_line_suffix_when_also_children": ", și ", "footer": "Această modificare va elimina relațiile părinte-copil din elementele de lucru existente de tipul {workItemTypeName}." }, "confirm_input": { - "label": "Introduceți „Confirmă” pentru a continua.", - "placeholder": "Confirmă" + "label": "Introduceți „confirmă” pentru a continua.", + "placeholder": "confirmă" }, "error_toast": { "title": "Eroare!", - "message": "Nu s-a putut rupe ierarhia. Vă rugăm să încercați din nou." + "message": "Nu s-au putut elimina legăturile și salva. Vă rugăm să încercați din nou." }, "confirm_button": { - "loading": "Se aplică", - "default": "Aplică și deconectează" + "loading": "Se salvează", + "default": "Salvează oricum" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/ro/work-item.json b/packages/i18n/src/locales/ro/work-item.json index c9e9126c0cd..a989e537093 100644 --- a/packages/i18n/src/locales/ro/work-item.json +++ b/packages/i18n/src/locales/ro/work-item.json @@ -20,6 +20,7 @@ "due_date": "Adaugă termenul limită", "parent": "Adaugă activitate părinte", "sub_issue": "Adaugă sub-activitate", + "dependency": "Adaugă dependență", "relation": "Adaugă relație", "link": "Adaugă link", "existing": "Adaugă activitate existentă" @@ -110,6 +111,43 @@ "copy_link": { "success": "Linkul comentariului a fost copiat în clipboard", "error": "Eroare la copierea linkului comentariului. Încercați din nou mai târziu." + }, + "replies": { + "create": { + "submit_button": "Adaugă răspuns", + "placeholder": "Adaugă răspuns" + }, + "toast": { + "fetch": { + "error": { + "message": "Preluarea răspunsurilor a eșuat" + } + }, + "create": { + "success": { + "message": "Răspuns creat cu succes" + }, + "error": { + "message": "Crearea răspunsului a eșuat" + } + }, + "update": { + "success": { + "message": "Răspuns actualizat cu succes" + }, + "error": { + "message": "Actualizarea răspunsului a eșuat" + } + }, + "delete": { + "success": { + "message": "Răspuns șters cu succes" + }, + "error": { + "message": "Ștergerea răspunsului a eșuat" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Deselează tot" }, "open_in_full_screen": "Deschide activitatea pe tot ecranul", + "duplicate": { + "modal": { + "title": "Creează o copie într-un alt proiect", + "description1": "Aceasta creează o copie a activității.", + "description2": "Toate datele proprietăților vor fi eliminate la duplicare.", + "placeholder": "Selectează un proiect" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Activitate duplicată cu succes" + }, + "error": { + "message": "Duplicarea activității a eșuat" + } + } + }, + "pages": { + "link_pages": "Conectează pagini", + "show_wiki_pages": "Afișează paginile Wiki", + "link_pages_to": "Conectează pagini la", + "linked_pages": "Pagini conectate", + "no_description": "Aceasta este o pagină goală. De ce nu scrii ceva înăuntru și o vezi apărând aici ca acest text indicator", + "toasts": { + "link": { + "success": { + "title": "Pagini actualizate", + "message": "Paginile au fost actualizate cu succes" + }, + "error": { + "title": "Actualizarea paginilor a eșuat", + "message": "Actualizarea paginilor a eșuat" + } + }, + "remove": { + "success": { + "title": "Pagină eliminată", + "message": "Pagina a fost eliminată cu succes" + }, + "error": { + "title": "Eliminarea paginii a eșuat", + "message": "Eliminarea paginii a eșuat" + } + } + } + }, "vote": { "click_to_upvote": "Clic pentru a vota pozitiv", "click_to_downvote": "Clic pentru a vota negativ", @@ -241,54 +326,6 @@ "title": "Imposibil de actualizat elementele de lucru", "message": "Schimbarea stării nu este permisă pentru unele elemente de lucru. Asigură-te că schimbarea stării este permisă." } - }, - "workflows": { - "toggle": { - "title": "Activează fluxurile de lucru", - "description": "Setează fluxurile de lucru pentru a controla mișcarea elementelor de lucru", - "no_states_tooltip": "Nicio stare nu a fost adăugată în fluxul de lucru.", - "toast": { - "loading": { - "enabling": "Se activează fluxurile de lucru", - "disabling": "Se dezactivează fluxurile de lucru" - }, - "success": { - "title": "Succes!", - "message": "Fluxurile de lucru au fost activate cu succes." - }, - "error": { - "title": "Eroare!", - "message": "Fluxurile de lucru nu au putut fi activate. Te rugăm să încerci din nou." - } - } - }, - "heading": "Fluxuri de lucru", - "description": "Automatizează tranzițiile elementelor de lucru și stabilește reguli pentru a controla modul în care sarcinile avansează prin fluxul proiectului tău.", - "add_button": "Adaugă un flux de lucru nou", - "search": "Caută fluxuri de lucru", - "detail": { - "define": "Definește fluxul de lucru", - "add_states": "Adaugă stări", - "unmapped_states": { - "title": "Au fost detectate stări nemapate", - "description": "Unele elemente de lucru ale tipurilor selectate se află în prezent în stări care nu există în acest flux de lucru.", - "note": "Dacă activezi acest flux de lucru, aceste elemente vor fi mutate automat în starea inițială a acestui flux de lucru.", - "label": "Stări lipsă", - "tooltip": "Unele elemente de lucru se află în stări care nu sunt mapate la acest flux de lucru. Deschide fluxul de lucru pentru a-l revizui." - } - }, - "select_states": { - "empty_state": { - "title": "Toate stările sunt în uz", - "description": "Toate stările definite pentru acest proiect sunt deja prezente în fluxul de lucru curent." - } - }, - "default_footer": { - "fallback_message": "Acest flux de lucru se aplică oricărui tip de element de lucru care nu este atribuit unui flux de lucru." - }, - "create": { - "heading": "Creează un flux de lucru nou" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/ro/workspace-settings.json b/packages/i18n/src/locales/ro/workspace-settings.json index 3b05bb2127f..f40804404b1 100644 --- a/packages/i18n/src/locales/ro/workspace-settings.json +++ b/packages/i18n/src/locales/ro/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Facturare și abonamente", + "description": "Alege abonamentul tău, gestionează abonamentele și actualizează cu ușurință pe măsură ce nevoile tale cresc.", "title": "Facturare și Abonamente", "current_plan": "Abonament curent", "free_plan": "Folosești în prezent abonamentul gratuit", "view_plans": "Vezi abonamentele" }, "exports": { + "heading": "Exporturi", + "description": "Exportă datele proiectelor tale în diverse formate și accesează istoricul exporturilor cu link-uri de descărcare.", "title": "Exporturi", "exporting": "Se exportă", "previous_exports": "Exporturi anterioare", "export_separate_files": "Exportă datele în fișiere separate", + "exporting_projects": "Se exportă proiectul", + "format": "Format", "filters_info": "Aplică filtre pentru a exporta elemente de lucru specifice în funcție de criteriile tale.", "modal": { "title": "Exportă în", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook-uri", + "description": "Automatizează notificările către servicii externe când se produc evenimente ale proiectului.", "title": "Puncte de notificare (Webhooks)", "add_webhook": "Adaugă punct de notificare (webhook)", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Integrări", + "heading": "Integrări", + "description": "Conectează-te cu instrumente și servicii populare pentru a sincroniza munca ta în întregul ecosistem al fluxului de lucru.", "page_title": "Lucrează cu datele tale Plane în aplicațiile disponibile sau în ale tale proprii.", "page_description": "Vizualizează toate integrările utilizate de acest spațiu de lucru sau de tine." }, "imports": { - "title": "Importuri" + "title": "Importuri", + "heading": "Importuri", + "description": "Conectează-te și importă date din instrumentele tale existente de gestionare a proiectelor pentru a-ți simplifica integrarea fluxului de lucru." }, "worklogs": { - "title": "Jurnale de lucru" + "title": "Jurnale de lucru", + "heading": "Jurnale de lucru", + "description": "Descarcă jurnale de lucru (timesheet-uri) pentru oricine din orice proiect." }, "group_syncing": { "title": "Sincronizare grupuri", @@ -242,7 +256,10 @@ "description": "Configurați domeniul dvs. și activați Single sign-on" }, "project_states": { - "title": "Stări de proiect" + "title": "Stări de proiect", + "heading": "Vezi prezentarea progresului pentru toate proiectele.", + "description": "Stările proiectelor sunt o funcție exclusivă Plane pentru urmărirea progresului tuturor proiectelor tale după orice proprietate a proiectului.", + "go_to_settings": "Mergi la setări" }, "projects": { "title": "Proiecte", @@ -252,6 +269,16 @@ "labels": "Etichete de proiect" } }, + "templates": { + "title": "Șabloane", + "heading": "Șabloane", + "description": "Economisește 80% din timpul petrecut creând proiecte, activități și pagini atunci când folosești șabloane." + }, + "relations": { + "title": "Relații", + "heading": "Relații", + "description": "Creează și gestionează tipurile de relații care conectează activitățile din spațiul tău de lucru." + }, "cancel_trial": { "title": "Anulează mai întâi perioada de probă.", "description": "Ai o perioadă de probă activă pentru unul dintre planurile noastre plătite. Te rugăm să o anulezi mai întâi pentru a continua.", @@ -263,6 +290,7 @@ "cancel_error_message": "Încearcă din nou, te rog." }, "applications": { + "internal": "Intern", "title": "Applications", "applicationId_copied": "ID-ul aplicației copiat în clipboard", "clientId_copied": "ID-ul clientului copiat în clipboard", @@ -271,10 +299,61 @@ "your_apps": "Aplicațiile tale", "connect": "Conectează", "connected": "Conectat", + "disconnect": "Deconectează", "install": "Instalează", "installed": "Instalat", "configure": "Configurează", "app_available": "Ai făcut această aplicație disponibilă pentru a fi folosită cu un workspace al Plane", + "app_credentials_regenrated": { + "title": "Acreditările aplicației au fost regenerate cu succes", + "description": "Înlocuiți secretul clientului peste tot unde este folosit. Secretul anterior nu mai este valid." + }, + "app_created": { + "title": "Aplicația a fost creată cu succes", + "description": "Folosiți acreditările pentru a instala aplicația într-un spațiu de lucru Plane" + }, + "installed_apps": "Aplicații instalate", + "all_apps": "Toate aplicațiile", + "internal_apps": "Aplicații interne", + "app_name_title": "Cum vei numi această aplicație", + "app_description_title": { + "label": "Descriere lungă", + "placeholder": "Scrieți o descriere lungă pentru piață. Apăsați '/' pentru comenzi." + }, + "authorization_grant_type": { + "title": "Tipul conexiunii", + "description": "Alege dacă aplicația ta trebuie instalată o dată pentru spațiul de lucru sau să permită fiecărui utilizator să își conecteze propriul cont" + }, + "website": { + "title": "Site web", + "description": "Link către site-ul web al aplicației dvs.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Creator de aplicații", + "description": "Persoana sau organizația care creează aplicația." + }, + "app_maker_error": "Maker-ul aplicației este obligatoriu", + "setup_url": { + "label": "URL de configurare", + "description": "Utilizatorii vor fi redirecționați către acest URL atunci când instalează aplicația.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL webhook", + "description": "Aici vom trimite evenimente și actualizări webhook din spațiile de lucru unde aplicația dvs. este instalată.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Secret webhook", + "description": "Secret folosit pentru a verifica cererile webhook primite.", + "placeholder": "Introdu o cheie secretă aleatorie" + }, + "redirect_uris": { + "label": "URI de redirecționare (separate prin spațiu)", + "description": "Utilizatorii vor fi redirecționați către acest traseu după ce s-au autentificat cu Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Conectează un workspace al Plane pentru a începe să folosesti", "client_id_and_secret": "ID-ul clientului și Secretul", "client_id_and_secret_description": "Copiază și salvează această cheie secretă în Pagini. Nu poți vedea această cheie din nou după ce închizi.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slug deja există", "failed_to_create_application": "Eroare la crearea aplicației", "upload_logo": "Încarcă Logo", - "app_name_title": "Cum vei numi această aplicație", "app_name_error": "Numele aplicației este obligatoriu", "app_short_description_title": "Dați această aplicație o descriere scurtă", "app_short_description_error": "Descrierea scurtă a aplicației este obligatorie", - "app_description_title": { - "label": "Descriere lungă", - "placeholder": "Scrieți o descriere lungă pentru piață. Apăsați '/' pentru comenzi." - }, - "authorization_grant_type": { - "title": "Tipul conexiunii", - "description": "Alege dacă aplicația ta trebuie instalată o dată pentru spațiul de lucru sau să permită fiecărui utilizator să își conecteze propriul cont" - }, "app_description_error": "Descrierea aplicației este obligatorie", "app_slug_title": "Slug-ul aplicației", "app_slug_error": "Slug-ul aplicației este obligatoriu", - "app_maker_title": "Maker-ul aplicației", - "app_maker_error": "Maker-ul aplicației este obligatoriu", + "invalid_website_error": "Site web invalid", "webhook_url_title": "URL-ul webhook-ului", "webhook_url_error": "URL-ul webhook-ului este obligatoriu", "invalid_webhook_url_error": "URL-ul webhook-ului este invalid", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Introduceți spațiu separat originile unde aplicația va fi permisă să facă cereri e.g app.com example.com", "create_app": "Creează aplicație", "update_app": "Actualizează aplicație", + "build_your_own_app": "Construiți propria aplicație", + "edit_app_details": "Editează detaliile aplicației", "regenerate_client_secret_description": "Regenerate the client secret. If you regenerate the secret, you can copy the key or download it to a CSV file right after.", "regenerate_client_secret": "Regenerate client secret", "regenerate_client_secret_confirm_title": "Sigur vrei să regenerezi secretul client?", @@ -362,7 +433,6 @@ "video_url_title": "URL-ul video", "video_url_error": "URL-ul video este obligatoriu", "invalid_video_url_error": "URL-ul video este invalid", - "setup_url_title": "URL-ul setup-ului", "setup_url_error": "URL-ul setup-ului este obligatoriu", "invalid_setup_url_error": "URL-ul setup-ului este invalid", "configuration_url_title": "URL-ul configurării", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Fișier invalid sau depășește limita de dimensiune ({size} MB)", "uploading": "Încarcă...", "upload_and_save": "Încarcă și salvează", - "app_credentials_regenrated": { - "title": "Acreditările aplicației au fost regenerate cu succes", - "description": "Înlocuiți secretul clientului peste tot unde este folosit. Secretul anterior nu mai este valid." - }, - "app_created": { - "title": "Aplicația a fost creată cu succes", - "description": "Folosiți acreditările pentru a instala aplicația într-un spațiu de lucru Plane" - }, - "installed_apps": "Aplicații instalate", - "all_apps": "Toate aplicațiile", - "internal_apps": "Aplicații interne", - "website": { - "title": "Site web", - "description": "Link către site-ul web al aplicației dvs.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Creator de aplicații", - "description": "Persoana sau organizația care creează aplicația." - }, - "setup_url": { - "label": "URL de configurare", - "description": "Utilizatorii vor fi redirecționați către acest URL atunci când instalează aplicația.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL webhook", - "description": "Aici vom trimite evenimente și actualizări webhook din spațiile de lucru unde aplicația dvs. este instalată.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI de redirecționare (separate prin spațiu)", - "description": "Utilizatorii vor fi redirecționați către acest traseu după ce s-au autentificat cu Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Cerere de instalare", "app_consent_no_access_description": "Această aplicație poate fi instalată doar după ce un administrator al workspace-ului o instalează. Contactați administratorul workspace-ului pentru a continua.", + "app_consent_unapproved_title": "Această aplicație nu a fost încă revizuită sau aprobată de Plane.", + "app_consent_unapproved_description": "Asigură-te că ai încredere în această aplicație înainte de a o conecta la spațiul tău de lucru.", + "go_to_app": "Mergi la aplicație", "enable_app_mentions": "Activează mențiunile aplicației", "enable_app_mentions_tooltip": "Când aceasta este activată, utilizatorii pot menționa sau atribui Work Items acestei aplicații.", "scopes": "Domenii", @@ -433,15 +472,18 @@ "profile": "Acces la informațiile profilului utilizatorului", "agents": "Acces la agenți și toate entitățile legate de agenți", "assets": "Acces la active și toate entitățile legate de active" - }, - "build_your_own_app": "Construiți propria aplicație", - "edit_app_details": "Editează detaliile aplicației", - "internal": "Intern" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Vezi-ți munca să devină mai inteligentă și mai rapidă cu AI care este conectată în mod nativ la munca ta și la baza de cunoștințe." + }, + "runners": { + "title": "Plane Runner", + "heading": "Script-uri", + "new_script": "Script nou", + "description": "Automatizează fluxurile tale de lucru cu scripturi personalizate și reguli de automatizare." } }, "empty_state": { diff --git a/packages/i18n/src/locales/ro/workspace.json b/packages/i18n/src/locales/ro/workspace.json index 0862fec092c..abdc8cbba93 100644 --- a/packages/i18n/src/locales/ro/workspace.json +++ b/packages/i18n/src/locales/ro/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Activități asumate și cerere", "custom": "Analitice personalizate" }, + "total": "Totalul {entity}", + "started_work_items": "{entity} începute", + "backlog_work_items": "{entity} din backlog", + "un_started_work_items": "{entity} neîncepute", + "completed_work_items": "{entity} finalizate", + "project_insights": "Informații despre proiect", + "summary_of_projects": "Sumarul proiectelor", + "all_projects": "Toate proiectele", + "trend_on_charts": "Tendință în grafice", + "active_projects": "Proiecte active", + "customized_insights": "Perspective personalizate", + "created_vs_resolved": "Creat vs Rezolvat", "empty_state": { - "customized_insights": { - "description": "Elementele de lucru atribuite ție, împărțite pe stări, vor apărea aici.", - "title": "Nu există date încă" + "project_insights": { + "title": "Nu există date încă", + "description": "Elementele de lucru atribuite ție, împărțite pe stări, vor apărea aici." }, "created_vs_resolved": { - "description": "Elementele de lucru create și rezolvate în timp vor apărea aici.", - "title": "Nu există date încă" + "title": "Nu există date încă", + "description": "Elementele de lucru create și rezolvate în timp vor apărea aici." }, - "project_insights": { + "customized_insights": { "title": "Nu există date încă", "description": "Elementele de lucru atribuite ție, împărțite pe stări, vor apărea aici." }, @@ -132,29 +144,11 @@ "description": "Analizele tendințelor de intake vor apărea aici. Adăugați elemente de lucru la intake pentru a începe să urmăriți tendințele." } }, - "created_vs_resolved": "Creat vs Rezolvat", - "customized_insights": "Perspective personalizate", - "backlog_work_items": "{entity} din backlog", - "active_projects": "Proiecte active", - "trend_on_charts": "Tendință în grafice", - "all_projects": "Toate proiectele", - "summary_of_projects": "Sumarul proiectelor", - "project_insights": "Informații despre proiect", - "started_work_items": "{entity} începute", - "total_work_items": "Totalul {entity}", - "total_projects": "Total proiecte", - "total_admins": "Total administratori", - "total_users": "Total utilizatori", - "total_intake": "Venit total", - "un_started_work_items": "{entity} neîncepute", - "total_guests": "Total invitați", - "completed_work_items": "{entity} finalizate", - "total": "Totalul {entity}", + "upgrade_to_plan": "Upgradează la {plan} pentru a debloca {tab}", + "workitem_resolved_vs_pending": "Elemente de lucru rezolvate vs în așteptare", "projects_by_status": "Proiecte după statut", "active_users": "Utilizatori activi", - "intake_trends": "Tendințe de admitere", - "workitem_resolved_vs_pending": "Elemente de lucru rezolvate vs în așteptare", - "upgrade_to_plan": "Upgradează la {plan} pentru a debloca {tab}" + "intake_trends": "Tendințe de admitere" }, "workspace_projects": { "label": "{count, plural, one {Proiect} other {Proiecte}}", @@ -318,6 +312,10 @@ "archived": { "title": "Încă nu există pagini arhivate", "description": "Arhivează paginile care nu sunt pe radarul tău. Accesează-le aici când ai nevoie." + }, + "shared": { + "title": "Nicio pagină partajată încă", + "description": "Paginile pe care alții le-au partajat cu tine vor apărea aici." } } }, diff --git a/packages/i18n/src/locales/ru/auth.json b/packages/i18n/src/locales/ru/auth.json index fbfb0c0a90c..3757c971fa8 100644 --- a/packages/i18n/src/locales/ru/auth.json +++ b/packages/i18n/src/locales/ru/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "name@company.com", - "errors": { - "required": "Email обязателен", - "invalid": "Email недействителен" - } - }, - "password": { - "label": "Пароль", - "set_password": "Установить пароль", - "placeholder": "Введите пароль", - "confirm_password": { - "label": "Подтвердите пароль", - "placeholder": "Подтвердите пароль" - }, - "current_password": { - "label": "Текущий пароль" - }, - "new_password": { - "label": "Новый пароль", - "placeholder": "Введите новый пароль" - }, - "change_password": { - "label": { - "default": "Сменить пароль", - "submitting": "Смена пароля" - } - }, - "errors": { - "match": "Пароли не совпадают", - "empty": "Пожалуйста, введите ваш пароль", - "length": "Длина пароля должна быть более 8 символов", - "strength": { - "weak": "Слабый пароль", - "strong": "Сильный пароль" - } - }, - "submit": "Установить пароль", - "toast": { - "change_password": { - "success": { - "title": "Успех!", - "message": "Пароль успешно изменён." - }, - "error": { - "title": "Ошибка!", - "message": "Что-то пошло не так. Пожалуйста, попробуйте снова." - } - } - } - }, - "unique_code": { - "label": "Уникальный код", - "placeholder": "123456", - "paste_code": "Вставьте код, отправленный на ваш email", - "requesting_new_code": "Запрос нового кода", - "sending_code": "Отправка кода" - }, - "already_have_an_account": "Уже есть аккаунт?", - "login": "Войти", - "create_account": "Создать аккаунт", - "new_to_plane": "Впервые в Plane?", - "back_to_sign_in": "Вернуться к входу", - "resend_in": "Отправить снова через {seconds} секунд", - "sign_in_with_unique_code": "Войти с уникальным кодом", - "forgot_password": "Забыли пароль?", - "username": { - "label": "Имя пользователя", - "placeholder": "Введите ваше имя пользователя" - } - }, - "sign_up": { - "header": { - "label": "Создайте аккаунт, чтобы начать управлять работой с вашей командой.", - "step": { - "email": { - "header": "Регистрация", - "sub_header": "" - }, - "password": { - "header": "Регистрация", - "sub_header": "Зарегистрируйтесь, используя комбинацию email-пароль." - }, - "unique_code": { - "header": "Регистрация", - "sub_header": "Зарегистрируйтесь, используя уникальный код, отправленный на указанный выше email." - } - } - }, - "errors": { - "password": { - "strength": "Попробуйте установить сильный пароль для продолжения" - } - } - }, - "sign_in": { - "header": { - "label": "Войдите, чтобы начать управлять работой с вашей командой.", - "step": { - "email": { - "header": "Войти или зарегистрироваться", - "sub_header": "" - }, - "password": { - "header": "Войти или зарегистрироваться", - "sub_header": "Используйте комбинацию email-пароль для входа." - }, - "unique_code": { - "header": "Войти или зарегистрироваться", - "sub_header": "Войдите, используя уникальный код, отправленный на указанный выше email." - } - } - } - }, - "forgot_password": { - "title": "Сбросьте ваш пароль", - "description": "Введите проверенный email вашего аккаунта, и мы отправим вам ссылку для сброса пароля.", - "email_sent": "Мы отправили ссылку для сброса на ваш email", - "send_reset_link": "Отправить ссылку для сброса", - "errors": { - "smtp_not_enabled": "Мы видим, что ваш администратор не включил SMTP, мы не сможем отправить ссылку для сброса пароля" - }, - "toast": { - "success": { - "title": "Email отправлен", - "message": "Проверьте ваши входящие для ссылки на сброс пароля. Если она не появится в течение нескольких минут, проверьте папку спама." - }, - "error": { - "title": "Ошибка!", - "message": "Что-то пошло не так. Пожалуйста, попробуйте снова." - } - } - }, - "reset_password": { - "title": "Установите новый пароль", - "description": "Обеспечьте безопасность вашего аккаунта с помощью сильного пароля" - }, - "set_password": { - "title": "Обеспечьте безопасность вашего аккаунта", - "description": "Установка пароля помогает вам безопасно входить в систему" - }, - "sign_out": { - "toast": { - "error": { - "title": "Ошибка!", - "message": "Не удалось выйти. Пожалуйста, попробуйте снова." - } - } - }, - "ldap": { - "header": { - "label": "Продолжить с {ldapProviderName}", - "sub_header": "Введите ваши учетные данные {ldapProviderName}" - } - } - }, "sso": { "header": "Идентичность", "description": "Настройте свой домен для доступа к функциям безопасности, включая единый вход.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "name@company.com", + "errors": { + "required": "Email обязателен", + "invalid": "Email недействителен" + } + }, + "password": { + "label": "Пароль", + "set_password": "Установить пароль", + "placeholder": "Введите пароль", + "confirm_password": { + "label": "Подтвердите пароль", + "placeholder": "Подтвердите пароль" + }, + "current_password": { + "label": "Текущий пароль" + }, + "new_password": { + "label": "Новый пароль", + "placeholder": "Введите новый пароль" + }, + "change_password": { + "label": { + "default": "Сменить пароль", + "submitting": "Смена пароля" + } + }, + "errors": { + "match": "Пароли не совпадают", + "empty": "Пожалуйста, введите ваш пароль", + "length": "Длина пароля должна быть более 8 символов", + "strength": { + "weak": "Слабый пароль", + "strong": "Сильный пароль" + } + }, + "submit": "Установить пароль", + "toast": { + "change_password": { + "success": { + "title": "Успех!", + "message": "Пароль успешно изменён." + }, + "error": { + "title": "Ошибка!", + "message": "Что-то пошло не так. Пожалуйста, попробуйте снова." + } + } + } + }, + "unique_code": { + "label": "Уникальный код", + "placeholder": "123456", + "paste_code": "Вставьте код, отправленный на ваш email", + "requesting_new_code": "Запрос нового кода", + "sending_code": "Отправка кода" + }, + "already_have_an_account": "Уже есть аккаунт?", + "login": "Войти", + "create_account": "Создать аккаунт", + "new_to_plane": "Впервые в Plane?", + "back_to_sign_in": "Вернуться к входу", + "resend_in": "Отправить снова через {seconds} секунд", + "sign_in_with_unique_code": "Войти с уникальным кодом", + "forgot_password": "Забыли пароль?", + "username": { + "label": "Имя пользователя", + "placeholder": "Введите ваше имя пользователя" + } + }, + "sign_up": { + "header": { + "label": "Создайте аккаунт, чтобы начать управлять работой с вашей командой.", + "step": { + "email": { + "header": "Регистрация", + "sub_header": "" + }, + "password": { + "header": "Регистрация", + "sub_header": "Зарегистрируйтесь, используя комбинацию email-пароль." + }, + "unique_code": { + "header": "Регистрация", + "sub_header": "Зарегистрируйтесь, используя уникальный код, отправленный на указанный выше email." + } + } + }, + "errors": { + "password": { + "strength": "Попробуйте установить сильный пароль для продолжения" + } + } + }, + "sign_in": { + "header": { + "label": "Войдите, чтобы начать управлять работой с вашей командой.", + "step": { + "email": { + "header": "Войти или зарегистрироваться", + "sub_header": "" + }, + "password": { + "header": "Войти или зарегистрироваться", + "sub_header": "Используйте комбинацию email-пароль для входа." + }, + "unique_code": { + "header": "Войти или зарегистрироваться", + "sub_header": "Войдите, используя уникальный код, отправленный на указанный выше email." + } + } + } + }, + "forgot_password": { + "title": "Сбросьте ваш пароль", + "description": "Введите проверенный email вашего аккаунта, и мы отправим вам ссылку для сброса пароля.", + "email_sent": "Мы отправили ссылку для сброса на ваш email", + "send_reset_link": "Отправить ссылку для сброса", + "errors": { + "smtp_not_enabled": "Мы видим, что ваш администратор не включил SMTP, мы не сможем отправить ссылку для сброса пароля" + }, + "toast": { + "success": { + "title": "Email отправлен", + "message": "Проверьте ваши входящие для ссылки на сброс пароля. Если она не появится в течение нескольких минут, проверьте папку спама." + }, + "error": { + "title": "Ошибка!", + "message": "Что-то пошло не так. Пожалуйста, попробуйте снова." + } + } + }, + "reset_password": { + "title": "Установите новый пароль", + "description": "Обеспечьте безопасность вашего аккаунта с помощью сильного пароля" + }, + "set_password": { + "title": "Обеспечьте безопасность вашего аккаунта", + "description": "Установка пароля помогает вам безопасно входить в систему" + }, + "sign_out": { + "toast": { + "error": { + "title": "Ошибка!", + "message": "Не удалось выйти. Пожалуйста, попробуйте снова." + } + } + }, + "ldap": { + "header": { + "label": "Продолжить с {ldapProviderName}", + "sub_header": "Введите ваши учетные данные {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/ru/automation.json b/packages/i18n/src/locales/ru/automation.json index b352a03000f..a97e9e6c3b7 100644 --- a/packages/i18n/src/locales/ru/automation.json +++ b/packages/i18n/src/locales/ru/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Назад", "next": "Добавить действие" + }, + "warning": { + "disabled_trigger_switching": "Нельзя изменить тип триггера после создания" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Выберите опцию", "handler_name": { "add_comment": "Добавить комментарий", - "change_property": "Изменить свойство" + "change_property": "Изменить свойство", + "run_script": "Запустить скрипт" }, "configuration": { "label": "Конфигурация", @@ -89,6 +93,9 @@ "comment_block": { "title": "Добавить комментарий" }, + "run_script_block": { + "title": "Запустить скрипт" + }, "change_property_block": { "title": "Изменить свойство" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Название автоматизации", + "scope": "Область", + "projects": "Проекты", "last_run_on": "Последний запуск", "created_on": "Создано", "last_updated_on": "Последнее обновление", @@ -230,6 +239,35 @@ "description": "Автоматизации - это способ автоматизировать задачи в вашем проекте.", "sub_description": "Верните 80% своего административного времени, используя Автоматизации." } + }, + "global_automations": { + "project_select": { + "label": "Выберите проекты для запуска этой автоматизации", + "all_projects": { + "label": "Все проекты", + "description": "Автоматизация будет запускаться для всех проектов в рабочем пространстве." + }, + "select_projects": { + "label": "Выбрать проекты", + "description": "Автоматизация будет запускаться для выбранных проектов в рабочем пространстве.", + "placeholder": "Выберите проекты" + } + }, + "settings": { + "sidebar_label": "Автоматизации", + "title": "Автоматизации", + "description": "Стандартизируйте процессы в вашем рабочем пространстве с помощью глобальных автоматизаций." + }, + "table": { + "scope": { + "global": "Глобальный", + "project": { + "label": "Проект", + "multiple": "Несколько", + "all": "Все" + } + } + } } } } diff --git a/packages/i18n/src/locales/ru/common.json b/packages/i18n/src/locales/ru/common.json index 8accbe09869..c2881e55f8a 100644 --- a/packages/i18n/src/locales/ru/common.json +++ b/packages/i18n/src/locales/ru/common.json @@ -17,6 +17,7 @@ "no": "Нет", "ok": "OK", "name": "Имя", + "unknown_user": "Неизвестный пользователь", "description": "Описание", "search": "Поиск", "add_member": "Добавить участника", @@ -56,7 +57,8 @@ "no_worklogs": "Записей о работе пока нет", "no_history": "Истории пока нет" }, - "appearance": "Внешний вид", + "preferences": "Настройки", + "language_and_time": "Язык и время", "notifications": "Уведомления", "workspaces": "Рабочие пространства", "create_workspace": "Создать рабочее пространство", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Что-то пошло не так. Пожалуйста, попробуйте еще раз.", "load_more": "Загрузить еще", "select_or_customize_your_interface_color_scheme": "Выберите или настройте цветовую схему интерфейса.", + "timezone_setting": "Текущая настройка часового пояса.", + "language_setting": "Выберите язык, используемый в интерфейсе.", + "settings_moved_to_preferences": "Настройки часового пояса и языка перенесены в раздел «Настройки».", + "go_to_preferences": "Перейти к настройкам", "select_the_cursor_motion_style_that_feels_right_for_you": "Выберите стиль движения курсора, который подходит именно вам.", "theme": "Тема", "smooth_cursor": "Плавный курсор", @@ -163,6 +169,7 @@ "project_created_successfully": "Проект успешно создан", "project_created_successfully_description": "Проект успешно создан. Теперь вы можете добавлять рабочие элементы.", "project_name_already_taken": "Имя проекта уже используется.", + "project_name_cannot_contain_special_characters": "Название проекта не может содержать специальные символы.", "project_identifier_already_taken": "Идентификатор проекта уже используется.", "project_cover_image_alt": "Обложка проекта", "name_is_required": "Требуется имя", @@ -207,6 +214,7 @@ "issues": "Рабочие элементы", "cycles": "Циклы", "modules": "Модули", + "pages": "Страницы", "intake": "Предложения", "renew": "Продлить", "preview": "Предпросмотр", @@ -298,6 +306,7 @@ "start_date": "Дата начала", "end_date": "Дата окончания", "due_date": "Срок выполнения", + "target_date": "Целевая дата", "estimate": "Оценка", "change_parent_issue": "Изменить родительский рабочий элемент", "remove_parent_issue": "Удалить родительский рабочий элемент", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Новое пароль должен отличаться от старого пароля", "edited": "Редактировано", "bot": "Бот", + "settings_description": "Управляйте настройками аккаунта, рабочего пространства и проектов в одном месте. Переключайтесь между вкладками для удобной настройки.", + "back_to_workspace": "Вернуться в рабочее пространство", "upgrade_request": "Попросите администратора рабочего пространства выполнить обновление.", "copied_to_clipboard": "Скопировано в буфер обмена", "copied_to_clipboard_description": "URL успешно скопирован в буфер обмена", @@ -422,6 +433,9 @@ "modules": "Модули", "labels": "Метки", "label": "Метка", + "admins": "Администраторы", + "users": "Пользователи", + "guests": "Гости", "assignees": "Назначенные", "assignee": "Назначенный", "created_by": "Создано", @@ -451,6 +465,8 @@ "work_item": "Рабочий элемент", "work_items": "Рабочие элементы", "sub_work_item": "Подэлемент", + "views": "Представления", + "pages": "Страницы", "add": "Добавить", "warning": "Предупреждение", "updating": "Обновление", @@ -496,7 +512,7 @@ "workspace_level": "Уровень рабочего пространства", "order_by": { "label": "Сортировать по", - "manual": "Вручную", + "manual": "Вручную — Ранг", "last_created": "Последние созданные", "last_updated": "Последние обновленные", "start_date": "Дата начала", @@ -532,6 +548,7 @@ "continue": "Продолжить", "resend": "Отправить повторно", "relations": "Связи", + "dependencies": "Зависимости", "errors": { "default": { "title": "Ошибка!", @@ -563,11 +580,27 @@ "quarter": "Квартал", "press_for_commands": "Нажмите '/' для команд", "click_to_add_description": "Нажмите, чтобы добавить описание", + "on_track": "По плану", + "off_track": "Отклонение от плана", + "at_risk": "Под угрозой", + "timeline": "Хронология", + "completion": "Завершение", + "upcoming": "Предстоящие", + "completed": "Завершено", + "in_progress": "В процессе", + "planned": "Запланировано", + "paused": "На паузе", "search": { "label": "Поиск", "placeholder": "Введите для поиска", "no_matches_found": "Совпадений не найдено", - "no_matching_results": "Нет подходящих результатов" + "no_matching_results": "Нет подходящих результатов", + "min_chars": "Введите минимум {count} символов для поиска", + "error": "Ошибка получения результатов поиска", + "no_results": { + "title": "Нет подходящих результатов", + "description": "Удалите критерии поиска, чтобы увидеть все результаты" + } }, "actions": { "edit": "Редактировать", @@ -584,7 +617,9 @@ "clear_sorting": "Сбросить сортировку", "show_weekends": "Показывать выходные", "enable": "Включить", - "disable": "Отключить" + "disable": "Отключить", + "copy_markdown": "Копировать markdown", + "reply": "Ответить" }, "name": "Название", "discard": "Отменить", @@ -597,6 +632,7 @@ "disabled": "Отключён", "mandate": "Мандат", "mandatory": "Обязательный", + "global": "Глобальный", "yes": "Да", "no": "Нет", "please_wait": "Пожалуйста, подождите", @@ -606,6 +642,7 @@ "or": "или", "next": "Далее", "back": "Назад", + "retry": "Повторить", "cancelling": "Отмена", "configuring": "Настройка", "clear": "Очистить", @@ -660,30 +697,27 @@ "deactivated_user": "Деактивированный пользователь", "apply": "Применить", "applying": "Применение", - "users": "Пользователи", - "admins": "Администраторы", - "guests": "Гости", - "on_track": "По плану", - "off_track": "Отклонение от плана", - "at_risk": "Под угрозой", - "timeline": "Хронология", - "completion": "Завершение", - "upcoming": "Предстоящие", - "completed": "Завершено", - "in_progress": "В процессе", - "planned": "Запланировано", - "paused": "На паузе", + "overview": "Обзор", "no_of": "Количество {entity}", "resolved": "Решено", + "get_started": "Начать", "worklogs": "Рабочие журналы", "project_updates": "Обновления проекта", - "overview": "Обзор", "workflows": "Рабочие процессы", + "templates": "Шаблоны", + "business": "Business", "members_and_teamspaces": "Участники и командные пространства", + "recurring_work_items": "Повторяющиеся рабочие элементы", + "milestones": "Вехи", "open_in_full_screen": "Открыть {page} в полном экране", "details": "Подробности", "project_structure": "Структура проекта", - "custom_properties": "Пользовательские свойства" + "custom_properties": "Пользовательские свойства", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Ось X", @@ -789,26 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane не запустился. Это может быть из-за того, что один или несколько сервисов Plane не смогли запуститься.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Выберите View Logs из setup.sh и логов Docker, чтобы убедиться." }, - "no_of": "Количество {entity}", + "customize_navigation": "Настроить навигацию", + "personal": "Личное", + "accordion_navigation_control": "Навигация с аккордеоном", + "horizontal_navigation_bar": "Вкладочная навигация", + "show_limited_projects_on_sidebar": "Показывать ограниченное число проектов в боковой панели", + "enter_number_of_projects": "Введите число проектов", + "pin": "Закрепить", + "unpin": "Открепить", "workspace_dashboards": "Дашборды", "pi_chat": "AI Чат", "in_app": "В приложении", "forms": "Формы", - "choose_workspace_for_integration": "Выберите рабочее пространство для подключения этого приложения", - "integrations_description": "Приложения, которые работают с Plane, должны быть подключены к рабочему пространству, где вы являетесь администратором.", - "create_a_new_workspace": "Создать новое рабочее пространство", - "learn_more_about_workspaces": "Узнать больше о рабочих пространствах", - "no_workspaces_to_connect": "Нет рабочих пространств для подключения", - "no_workspaces_to_connect_description": "Вы должны создать рабочее пространство, чтобы подключить интеграции и шаблоны", + "milestones": "Вехи", + "milestones_description": "Вехи позволяют синхронизировать рабочие элементы с общими датами завершения.", "file_upload": { "upload_text": "Нажмите здесь, чтобы загрузить файл", "drag_drop_text": "Перетащите и отпустите", "processing": "Обработка", - "invalid": "Недопустимый тип файла", + "invalid_file_type": "Недопустимый тип файла", "missing_fields": "Отсутствуют поля", "success": "{fileName} загружен!" }, - "project_name_cannot_contain_special_characters": "Название проекта не может содержать специальные символы.", "date": "Дата", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/ru/editor.json b/packages/i18n/src/locales/ru/editor.json index 79d5af9d3ea..0e0cabdd671 100644 --- a/packages/i18n/src/locales/ru/editor.json +++ b/packages/i18n/src/locales/ru/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Пожалуйста, введите действительный URL." } + }, + "ai_block": { + "content": { + "placeholder": "Опишите содержимое этого блока", + "generated_here": "Ваш AI-контент будет сгенерирован здесь" + }, + "block_types": { + "placeholder": "Выберите тип блока", + "summarize_page": "Суммировать страницу", + "custom_prompt": "Пользовательский запрос" + }, + "actions": { + "discard": "Отменить", + "generate": "Сгенерировать", + "generating": "Генерация", + "rewriting": "Переписывание", + "rewrite": "Переписать", + "use_this": "Использовать это", + "refine": "Уточнить" + } } } diff --git a/packages/i18n/src/locales/ru/empty-state.json b/packages/i18n/src/locales/ru/empty-state.json index 2c8a31614e5..e322a5ec1ef 100644 --- a/packages/i18n/src/locales/ru/empty-state.json +++ b/packages/i18n/src/locales/ru/empty-state.json @@ -249,10 +249,22 @@ "title": "Отслеживайте учет времени для всех участников", "description": "Регистрируйте время на рабочих элементах, чтобы просматривать подробные табели для любого члена команды по проектам." }, + "group_syncing": { + "title": "Сопоставлений групп пока нет" + }, "template_setting": { "title": "Шаблонов пока нет", "description": "Сократите время настройки, создавая шаблоны для проектов, рабочих элементов и страниц — и начинайте новую работу за секунды.", "cta_primary": "Создать шаблон" + }, + "workflows": { + "title": "Рабочих процессов пока нет", + "description": "Создавайте рабочие процессы для управления прогрессом ваших рабочих элементов.", + "cta_primary": "Добавить новый рабочий процесс", + "states": { + "title": "Добавить состояния", + "description": "Выберите состояния, через которые проходит рабочий элемент." + } } } } diff --git a/packages/i18n/src/locales/ru/integration.json b/packages/i18n/src/locales/ru/integration.json index 49ec3c5133f..2ca648980c0 100644 --- a/packages/i18n/src/locales/ru/integration.json +++ b/packages/i18n/src/locales/ru/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Ошибка сервера при загрузке состояний" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Подключите и синхронизируйте репозитории Bitbucket Data Center с Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Проверка токенов внешних IdP для доступа к API.", @@ -302,10 +306,10 @@ "generic_error": "Произошла неожиданная ошибка при обработке вашего запроса", "connection_not_found": "Запрашиваемое подключение не найдено", "multiple_connections_found": "Найдено несколько подключений, когда ожидалось только одно", + "cannot_create_multiple_connections": "Вы уже подключили свою организацию к рабочему пространству. Пожалуйста, отключите существующее подключение перед подключением нового.", "installation_not_found": "Запрашиваемая установка не найдена", "user_not_found": "Запрашиваемый пользователь не найден", "error_fetching_token": "Не удалось получить токен аутентификации", - "cannot_create_multiple_connections": "Вы уже подключили свою организацию к рабочему пространству. Пожалуйста, отключите существующее подключение перед подключением нового.", "invalid_app_credentials": "Предоставленные учетные данные приложения недействительны", "invalid_app_installation_id": "Не удалось установить приложение" }, @@ -316,6 +320,7 @@ "pulling": "Извлечение", "timed_out": "Время истекло", "pulled": "Извлечено", + "progressing": "В процессе", "transforming": "Преобразование", "transformed": "Преобразовано", "pushing": "Отправка", diff --git a/packages/i18n/src/locales/ru/module.json b/packages/i18n/src/locales/ru/module.json index 2e93f9d8f2c..a42dd902b55 100644 --- a/packages/i18n/src/locales/ru/module.json +++ b/packages/i18n/src/locales/ru/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Модуль} other {Модули}}", - "no_module": "Нет модуля" + "no_module": "Нет модуля", + "select": "Добавить модули" } } diff --git a/packages/i18n/src/locales/ru/navigation.json b/packages/i18n/src/locales/ru/navigation.json index 09ff73bb1e6..80bbdd8be98 100644 --- a/packages/i18n/src/locales/ru/navigation.json +++ b/packages/i18n/src/locales/ru/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Ничего не найдено" + } + } + }, "sidebar": { + "stickies": "Стикеры", + "your_work": "Ваша работа", "projects": "Проекты", "pages": "Страницы", "new_work_item": "Новый рабочий элемент", "home": "Главная", - "your_work": "Ваша работа", "inbox": "Входящие", "workspace": "Рабочие пространства", "views": "Представления", @@ -21,14 +29,6 @@ "epics": "Эпики", "upgrade_plan": "Апгрейд план", "plane_pro": "Плейн Про", - "business": "Бизнес", - "recurring_work_items": "Повторяющиеся рабочие элементы" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Ничего не найдено" - } - } + "business": "Бизнес" } } diff --git a/packages/i18n/src/locales/ru/page.json b/packages/i18n/src/locales/ru/page.json index 95102377a2e..fa4e0db84a4 100644 --- a/packages/i18n/src/locales/ru/page.json +++ b/packages/i18n/src/locales/ru/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Связать страницы", - "show_wiki_pages": "Показать страницы Wiki", - "link_pages_to": "Связать страницы с", - "linked_pages": "Связанные страницы", - "no_description": "Эта страница пуста. Напишите что-нибудь здесь и посмотрите, как она отображается здесь как этот заполнитель", - "toasts": { - "link": { - "success": { - "title": "Страницы обновлены", - "message": "Страницы успешно обновлены" - }, - "error": { - "title": "Страницы не обновлены", - "message": "Страницы не могут быть обновлены" - } - }, - "remove": { - "success": { - "title": "Страница удалена", - "message": "Страница успешно удалена" - }, - "error": { - "title": "Страница не удалена", - "message": "Страница не может быть удалена" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,13 @@ "title": "Отсутствуют изображения", "description": "Добавьте изображения, чтобы увидеть их здесь." } + }, + "comments": { + "label": "Комментарии", + "empty_state": { + "title": "Нет комментариев", + "description": "Добавьте комментарии, чтобы увидеть их здесь." + } } }, "toasts": { @@ -100,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Переместить", + "loading": "Перемещение" + }, + "cannot_move_to_teamspace": "Приватные и общие страницы нельзя переместить в командное пространство.", "placeholders": { + "workspace_to_all": "Искать проекты и командные пространства", + "workspace_to_project": "Искать проекты", + "project_to_all": "Искать проекты и командные пространства", + "project_to_project": "Искать проекты", "project_to_all_with_wiki": "Искать коллекции wiki, проекты и командные пространства", "project_to_project_with_wiki": "Искать коллекции wiki и проекты" }, "toasts": { + "success": { + "title": "Успех!", + "message": "Страница успешно перемещена." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось переместить страницу. Повторите попытку позже." + }, "collection_error": { "title": "Перемещено в wiki", "message": "Страница была перемещена в wiki, но её не удалось добавить в выбранную коллекцию. Она остаётся в General." diff --git a/packages/i18n/src/locales/ru/project-settings.json b/packages/i18n/src/locales/ru/project-settings.json index e0388541782..6ecde27b9df 100644 --- a/packages/i18n/src/locales/ru/project-settings.json +++ b/packages/i18n/src/locales/ru/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Участники", "project_lead": "Руководитель проекта", + "project_lead_description": "Выберите руководителя проекта.", "default_assignee": "Ответственный по умолчанию", + "default_assignee_description": "Выберите исполнителя по умолчанию для проекта.", + "project_subscribers": "Подписчики проекта", + "project_subscribers_description": "Выберите участников, которые будут получать уведомления по этому проекту.", "guest_super_permissions": { "title": "Дать гостям доступ на просмотр всех рабочих элементов:", "sub_heading": "Гости смогут просматривать все рабочие элементы проекта" @@ -30,13 +34,11 @@ "title": "Пригласить участников", "sub_heading": "Пригласите коллег для работы над проектом.", "select_co_worker": "Выберите сотрудника" - }, - "project_lead_description": "Выберите руководителя проекта.", - "default_assignee_description": "Выберите исполнителя по умолчанию для проекта.", - "project_subscribers": "Подписчики проекта", - "project_subscribers_description": "Выберите участников, которые будут получать уведомления по этому проекту." + } }, "states": { + "heading": "Состояния", + "description": "Определяйте и настраивайте состояния рабочего процесса для отслеживания прогресса ваших рабочих элементов.", "describe_this_state_for_your_members": "Опишите этот статус для участников", "empty_state": { "title": "Нет статусов для группы {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Метки", + "description": "Создавайте пользовательские метки для категоризации и организации ваших рабочих элементов", "label_title": "Название метки", "label_title_is_required": "Название обязательно", "label_max_char": "Максимальная длина названия - 255 символов", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Оценки", + "description": "Настройте системы оценки для отслеживания и обмена информацией об усилиях, необходимых для каждого рабочего элемента.", "label": "Оценки", "title": "Включить оценки для моего проекта", - "description": "Они помогают вам в общении о сложности и рабочей нагрузке команды.", + "enable_description": "Они помогают вам в общении о сложности и рабочей нагрузке команды.", "no_estimate": "Без оценки", "new": "Новая система оценок", "create": { @@ -112,6 +118,16 @@ "title": "Не удалось переупорядочить оценки", "message": "Мы не смогли переупорядочить оценки, пожалуйста, попробуйте снова" } + }, + "switch": { + "success": { + "title": "Система оценок создана", + "message": "Успешно создано и включено" + }, + "error": { + "title": "Ошибка", + "message": "Что-то пошло не так" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Автоматизация", + "heading": "Автоматизации", + "description": "Настройте автоматические действия, чтобы упростить процесс управления проектом и сократить ручные задачи.", "auto-archive": { "title": "Автоархивация закрытых рабочих элементов", "description": "Plane будет автоматически архивировать рабочие элементы, которые были завершены или отменены.", @@ -194,90 +212,116 @@ "description": "Настройте GitHub и другие интеграции для синхронизации ваших рабочих элементов проекта." } }, - "cycles": { - "auto_schedule": { - "heading": "Автоматическое планирование циклов", - "description": "Поддерживайте движение циклов без ручной настройки.", - "tooltip": "Автоматически создавайте новые циклы на основе выбранного расписания.", - "edit_button": "Редактировать", - "form": { - "cycle_title": { - "label": "Название цикла", - "placeholder": "Название", - "tooltip": "К названию будут добавлены номера для последующих циклов. Например: Дизайн - 1/2/3", - "validation": { - "required": "Название цикла обязательно", - "max_length": "Название не должно превышать 255 символов" - } - }, - "cycle_duration": { - "label": "Длительность цикла", - "unit": "Недели", - "validation": { - "required": "Длительность цикла обязательна", - "min": "Длительность цикла должна быть не менее 1 недели", - "max": "Длительность цикла не может превышать 30 недель", - "positive": "Длительность цикла должна быть положительной" - } - }, - "cooldown_period": { - "label": "Период охлаждения", - "unit": "дни", - "tooltip": "Пауза между циклами перед началом следующего.", - "validation": { - "required": "Период охлаждения обязателен", - "negative": "Период охлаждения не может быть отрицательным" - } - }, - "start_date": { - "label": "День начала цикла", - "validation": { - "required": "Дата начала обязательна", - "past": "Дата начала не может быть в прошлом" - } + "workflows": { + "toggle": { + "title": "Включить рабочие процессы", + "description": "Настройте рабочие процессы для управления перемещением рабочих элементов", + "no_states_tooltip": "В рабочий процесс не добавлены состояния.", + "no_work_item_types_tooltip": "В рабочий процесс не добавлены типы рабочих элементов.", + "no_states_or_work_item_types_tooltip": "В рабочий процесс не добавлены состояния или типы рабочих элементов.", + "toast": { + "loading": { + "enabling": "Включение рабочих процессов", + "disabling": "Отключение рабочих процессов" }, - "number_of_cycles": { - "label": "Количество будущих циклов", - "validation": { - "required": "Количество циклов обязательно", - "min": "Требуется не менее 1 цикла", - "max": "Невозможно запланировать более 3 циклов" - } + "success": { + "title": "Успех!", + "message": "Рабочие процессы успешно включены." }, - "auto_rollover": { - "label": "Автоматический перенос рабочих элементов", - "tooltip": "В день завершения цикла переместить все незавершенные рабочие элементы в следующий цикл." + "error": { + "title": "Ошибка!", + "message": "Не удалось включить рабочие процессы. Пожалуйста, попробуйте снова." + } + } + }, + "heading": "Рабочие процессы", + "description": "Автоматизируйте переходы рабочих элементов и устанавливайте правила, которые управляют тем, как задачи проходят через конвейер вашего проекта.", + "add_button": "Добавить новый рабочий процесс", + "search": "Искать рабочие процессы", + "detail": { + "define": "Определить рабочий процесс", + "add_states": "Добавить состояния", + "unmapped_states": { + "title": "Обнаружены несопоставленные состояния", + "description": "Некоторые рабочие элементы выбранных типов сейчас находятся в состояниях, которых нет в этом рабочем процессе.", + "note": "Если вы включите этот рабочий процесс, эти элементы будут автоматически перемещены в начальное состояние этого рабочего процесса.", + "label": "Отсутствующие состояния", + "tooltip": "Некоторые рабочие элементы находятся в состояниях, которые не сопоставлены с этим рабочим процессом. Откройте рабочий процесс, чтобы проверить." + } + }, + "select_states": { + "empty_state": { + "title": "Все состояния используются", + "description": "Все определённые для этого проекта состояния уже присутствуют в текущем рабочем процессе." + } + }, + "default_footer": { + "fallback_message": "Этот рабочий процесс применяется к любому типу рабочего элемента, который не назначен ни одному рабочему процессу." + }, + "create": { + "heading": "Создать новый рабочий процесс", + "name": { + "placeholder": "Добавьте уникальное имя", + "validation": { + "max_length": "Имя должно содержать менее 255 символов", + "required": "Имя обязательно", + "invalid": "Имя может содержать только буквы, цифры, пробелы, дефисы и апострофы" } }, - "toast": { - "toggle": { - "loading_enable": "Включение автоматического планирования циклов", - "loading_disable": "Отключение автоматического планирования циклов", - "success": { - "title": "Успешно!", - "message": "Автоматическое планирование циклов успешно переключено." - }, - "error": { - "title": "Ошибка!", - "message": "Не удалось переключить автоматическое планирование циклов." - } - }, - "save": { - "loading": "Сохранение конфигурации автоматического планирования циклов", - "success": { - "title": "Успешно!", - "message_create": "Конфигурация автоматического планирования циклов успешно сохранена.", - "message_update": "Конфигурация автоматического планирования циклов успешно обновлена." - }, - "error": { - "title": "Ошибка!", - "message_create": "Не удалось сохранить конфигурацию автоматического планирования циклов.", - "message_update": "Не удалось обновить конфигурацию автоматического планирования циклов." - } + "description": { + "placeholder": "Добавьте краткое описание", + "validation": { + "invalid": "Описание может содержать только буквы, цифры, пробелы, дефисы и апострофы" } + }, + "work_item_type": { + "label": "Тип рабочего элемента" + }, + "success": { + "title": "Успех!", + "message": "Рабочий процесс успешно создан." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось создать рабочий процесс. Пожалуйста, попробуйте снова." + } + }, + "update": { + "success": { + "title": "Успех!", + "message": "Рабочий процесс успешно обновлён." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось обновить рабочий процесс. Пожалуйста, попробуйте снова." + } + }, + "delete": { + "loading": "Удаление рабочего процесса", + "success": { + "title": "Успех!", + "message": "Рабочий процесс успешно удалён." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось удалить рабочий процесс. Пожалуйста, попробуйте снова." + } + }, + "add_states": { + "success": { + "title": "Успех!", + "message": "Состояния успешно добавлены." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось добавить состояния. Пожалуйста, попробуйте снова." } } }, + "work_item_types": { + "heading": "Типы рабочих элементов", + "description": "Создавайте и настраивайте различные типы рабочих элементов с уникальными свойствами" + }, "features": { "cycles": { "title": "Циклы", @@ -385,6 +429,98 @@ "success": "Функция проекта успешно обновлена.", "error": "Что-то пошло не так при обновлении функции проекта. Пожалуйста, попробуйте снова." } + }, + "project_updates": { + "heading": "Обновления проекта", + "description": "Консолидированное отслеживание и мониторинг прогресса по этому проекту" + }, + "templates": { + "heading": "Шаблоны", + "description": "Экономьте 80% времени, затрачиваемого на создание проектов, рабочих элементов и страниц, используя шаблоны." + }, + "cycles": { + "auto_schedule": { + "heading": "Автоматическое планирование циклов", + "description": "Поддерживайте движение циклов без ручной настройки.", + "tooltip": "Автоматически создавайте новые циклы на основе выбранного расписания.", + "edit_button": "Редактировать", + "form": { + "cycle_title": { + "label": "Название цикла", + "placeholder": "Название", + "tooltip": "К названию будут добавлены номера для последующих циклов. Например: Дизайн - 1/2/3", + "validation": { + "required": "Название цикла обязательно", + "max_length": "Название не должно превышать 255 символов" + } + }, + "cycle_duration": { + "label": "Длительность цикла", + "unit": "Недели", + "validation": { + "required": "Длительность цикла обязательна", + "min": "Длительность цикла должна быть не менее 1 недели", + "max": "Длительность цикла не может превышать 30 недель", + "positive": "Длительность цикла должна быть положительной" + } + }, + "cooldown_period": { + "label": "Период охлаждения", + "unit": "дни", + "tooltip": "Пауза между циклами перед началом следующего.", + "validation": { + "required": "Период охлаждения обязателен", + "negative": "Период охлаждения не может быть отрицательным" + } + }, + "start_date": { + "label": "День начала цикла", + "validation": { + "required": "Дата начала обязательна", + "past": "Дата начала не может быть в прошлом" + } + }, + "number_of_cycles": { + "label": "Количество будущих циклов", + "validation": { + "required": "Количество циклов обязательно", + "min": "Требуется не менее 1 цикла", + "max": "Невозможно запланировать более 3 циклов" + } + }, + "auto_rollover": { + "label": "Автоматический перенос рабочих элементов", + "tooltip": "В день завершения цикла переместить все незавершенные рабочие элементы в следующий цикл." + } + }, + "toast": { + "toggle": { + "loading_enable": "Включение автоматического планирования циклов", + "loading_disable": "Отключение автоматического планирования циклов", + "success": { + "title": "Успешно!", + "message": "Автоматическое планирование циклов успешно переключено." + }, + "error": { + "title": "Ошибка!", + "message": "Не удалось переключить автоматическое планирование циклов." + } + }, + "save": { + "loading": "Сохранение конфигурации автоматического планирования циклов", + "success": { + "title": "Успешно!", + "message_create": "Конфигурация автоматического планирования циклов успешно сохранена.", + "message_update": "Конфигурация автоматического планирования циклов успешно обновлена." + }, + "error": { + "title": "Ошибка!", + "message_create": "Не удалось сохранить конфигурацию автоматического планирования циклов.", + "message_update": "Не удалось обновить конфигурацию автоматического планирования циклов." + } + } + } + } } } } diff --git a/packages/i18n/src/locales/ru/project.json b/packages/i18n/src/locales/ru/project.json index 25cb517b023..78fab1eccb5 100644 --- a/packages/i18n/src/locales/ru/project.json +++ b/packages/i18n/src/locales/ru/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Сохраняйте фильтры в виде представлений. Создавайте неограниченное количество вариантов", + "description": "Представления - это сохранённые наборы фильтров для быстрого доступа. Все участники проекта видят созданные представления и могут выбирать подходящие.", + "primary_button": { + "text": "Создать первое представление", + "comic": { + "title": "Представления работают на основе свойств рабочих элементов", + "description": "Создавайте представления с любым количеством свойств в качестве фильтров." + } + }, + "filter": { + "title": "Подходящих представлений не найдено", + "description": "Нет представлений, соответствующих критериям поиска.\n Создайте новое представление." + } + }, + "no_archived_issues": { + "title": "Пока нет архивных рабочих элементов", + "description": "Вручную или автоматически вы можете архивировать рабочие элементы, которые завершены или отменены. Найдите их здесь после архивации.", + "primary_button": { + "text": "Настроить автоматизацию" + } + }, + "issues_empty_filter": { + "title": "Нет рабочих элементов, соответствующих применённым фильтрам", + "secondary_button": { + "text": "Сбросить все фильтры" + } + }, + "public": { + "title": "Пока нет публичных страниц", + "description": "Смотрите страницы, которыми поделились со всеми участниками проекта, здесь.", + "primary_button": { + "text": "Создать первую страницу" + } + }, + "archived": { + "title": "Пока нет архивных страниц", + "description": "Архивируйте неактуальные страницы. Получайте доступ к ним здесь при необходимости." + }, + "shared": { + "title": "Пока нет общих страниц", + "description": "Страницы, которыми с вами поделились, будут отображаться здесь." + } + }, + "delete_view": { + "title": "Вы уверены, что хотите удалить это представление?", + "content": "При подтверждении все параметры сортировки, фильтрации и отображения + макет, выбранный для этого представления, будут безвозвратно удалены без возможности восстановления." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Сохраняйте фильтры в виде представлений. Создавайте неограниченное количество вариантов", - "description": "Представления - это сохранённые наборы фильтров для быстрого доступа. Все участники проекта видят созданные представления и могут выбирать подходящие.", - "primary_button": { - "text": "Создать первое представление", - "comic": { - "title": "Представления работают на основе свойств рабочих элементов", - "description": "Создавайте представления с любым количеством свойств в качестве фильтров." - } - } - }, - "filter": { - "title": "Подходящих представлений не найдено", - "description": "Нет представлений, соответствующих критериям поиска.\n Создайте новое представление." - } - }, - "delete_view": { - "title": "Вы уверены, что хотите удалить это представление?", - "content": "При подтверждении все параметры сортировки, фильтрации и отображения + макет, выбранный для этого представления, будут безвозвратно удалены без возможности восстановления." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Вручную" } }, + "project_members": { + "full_name": "Полное имя", + "display_name": "Отображаемое имя", + "email": "Email", + "joining_date": "Дата присоединения", + "role": "Роль" + }, "project": { "members_import": { "title": "Импорт участников из CSV", diff --git a/packages/i18n/src/locales/ru/settings.json b/packages/i18n/src/locales/ru/settings.json index d79380ae800..baa8ab0eabb 100644 --- a/packages/i18n/src/locales/ru/settings.json +++ b/packages/i18n/src/locales/ru/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Настройки", + "description": "Настройте работу с приложением так, как вам удобно" + }, "notifications": { + "heading": "Email-уведомления", + "description": "Будьте в курсе рабочих элементов, на которые вы подписаны. Включите, чтобы получать уведомления.", "select_default_view": "Выбрать вид по умолчанию", "compact": "Компактный", "full": "Полный экран" + }, + "security": { + "heading": "Безопасность" + }, + "api_tokens": { + "title": "Личные токены доступа", + "description": "Генерируйте безопасные API-токены для интеграции ваших данных с внешними системами и приложениями." + }, + "activity": { + "heading": "Активность", + "description": "Отслеживайте ваши недавние действия и изменения во всех проектах и рабочих элементах." + }, + "connections": { + "title": "Соединения", + "heading": "Соединения", + "description": "Управляйте настройками соединений вашего рабочего пространства." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Профиль", "security": "Безопасность", "activity": "Активность", - "appearance": "Внешний вид", + "preferences": "Настройки", "notifications": "Уведомления", + "api-tokens": "Личные токены доступа", "connections": "Соединения" }, "tabs": { diff --git a/packages/i18n/src/locales/ru/template.json b/packages/i18n/src/locales/ru/template.json index c5989a1a165..3087fd7910b 100644 --- a/packages/i18n/src/locales/ru/template.json +++ b/packages/i18n/src/locales/ru/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Шаблоны", "description": "Сэкономьте 80% времени, затрачиваемого на создание проектов, рабочих элементов и страниц, используя шаблоны.", + "new_project_template": "Новый шаблон проекта", + "new_work_item_template": "Новый шаблон рабочего элемента", + "new_page_template": "Новый шаблон страницы", "options": { "project": { "label": "Шаблоны проектов" @@ -157,6 +160,14 @@ "required": "Хотя бы одно ключевое слово обязательно" } }, + "website": { + "label": "URL веб-сайта", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Некорректный URL", + "maxLength": "URL должен быть менее 800 символов" + } + }, "company_name": { "label": "Название компании", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Некорректный email адрес", - "required": "Email поддержки обязателен", "maxLength": "Email поддержки должен быть менее 255 символов" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": "Еще нет меток. Создайте метки, чтобы помочь организовать и фильтровать элементы работы в вашем проекте." }, + "no_modules": { + "description": "Модулей пока нет. Организуйте работу в подпроекты с назначенными руководителями и исполнителями." + }, "no_work_items": { "description": "Еще нет элементов работы. Добавьте один, чтобы лучше структурировать свою работу." }, diff --git a/packages/i18n/src/locales/ru/tour.json b/packages/i18n/src/locales/ru/tour.json index c54763e1855..6a752da97f5 100644 --- a/packages/i18n/src/locales/ru/tour.json +++ b/packages/i18n/src/locales/ru/tour.json @@ -110,6 +110,12 @@ "description": "Рабочую задачу можно отложить, чтобы просмотреть ее позже. Она будет перемещена в конец вашего списка открытых запросов." } }, + "mcp_connectors": { + "step_zero": { + "title": "Хватит переключать вкладки. Подключите свой мир.", + "description": "Подключите GitHub, Slack для отслеживания PR и получения сводок чатов прямо в Plane AI." + } + }, "navigation": { "modal": { "title": "Навигация, переосмысленная", diff --git a/packages/i18n/src/locales/ru/update.json b/packages/i18n/src/locales/ru/update.json index d1f45577561..50b4e2f4855 100644 --- a/packages/i18n/src/locales/ru/update.json +++ b/packages/i18n/src/locales/ru/update.json @@ -1,7 +1,38 @@ { "updates": { + "progress": { + "title": "Прогресс", + "since_last_update": "С последнего обновления", + "comments": "{count, plural, one{# Комментарий} few{# Комментария} many{# Комментариев} other{# Комментариев}}" + }, "add_update": "Добавить обновление", "add_update_placeholder": "Введите ваше обновление здесь", + "empty": { + "title": "Еще нет обновлений", + "description": "Вы можете здесь просматривать обновления." + }, + "reaction": { + "create": { + "success": { + "title": "Реакция создана", + "message": "Реакция успешно создана." + }, + "error": { + "title": "Не удалось создать реакцию", + "message": "Не удалось создать реакцию. Пожалуйста, попробуйте снова." + } + }, + "remove": { + "success": { + "title": "Реакция удалена", + "message": "Реакция успешно удалена" + }, + "error": { + "title": "Реакция не удалена", + "message": "Не удалось удалить реакцию" + } + } + }, "create": { "success": { "title": "Обновление создано", @@ -12,20 +43,6 @@ "message": "Не удалось создать обновление. Пожалуйста, попробуйте снова." } }, - "update": { - "success": { - "title": "Обновление обновлено", - "message": "Обновление успешно обновлено." - }, - "error": { - "title": "Не удалось обновить обновление", - "message": "Не удалось обновить обновление. Пожалуйста, попробуйте снова." - } - }, - "empty": { - "title": "Еще нет обновлений", - "description": "Вы можете здесь просматривать обновления." - }, "delete": { "title": "Удалить обновление", "confirmation": "Вы уверены, что хотите удалить это обновление? Это действие нельзя отменить.", @@ -38,26 +55,14 @@ "message": "Не удалось удалить обновление. Пожалуйста, попробуйте снова." } }, - "reaction": { - "create": { - "success": { - "title": "Реакция создана", - "message": "Реакция успешно создана." - }, - "error": { - "title": "Не удалось создать реакцию", - "message": "Не удалось создать реакцию. Пожалуйста, попробуйте снова." - } + "update": { + "success": { + "title": "Обновление обновлено", + "message": "Обновление успешно обновлено." }, - "delete": { - "success": { - "title": "Реакция удалена", - "message": "Реакция успешно удалена." - }, - "error": { - "title": "Не удалось удалить реакцию", - "message": "Не удалось удалить реакцию. Пожалуйста, попробуйте снова." - } + "error": { + "title": "Не удалось обновить обновление", + "message": "Не удалось обновить обновление. Пожалуйста, попробуйте снова." } } } diff --git a/packages/i18n/src/locales/ru/wiki.json b/packages/i18n/src/locales/ru/wiki.json index 6415697591e..3d97fdc8bc8 100644 --- a/packages/i18n/src/locales/ru/wiki.json +++ b/packages/i18n/src/locales/ru/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Не удалось создать страницу или добавить её в коллекцию. Повторите попытку.", "collection_link_copied": "Ссылка на коллекцию скопирована в буфер обмена." } + }, + "wiki": { + "upgrade_flow": { + "title": "Обновите план, чтобы разблокировать Wiki", + "description": "Разблокируйте публичные страницы, историю версий, общие страницы, совместную работу в реальном времени и страницы рабочего пространства для wiki, корпоративной документации и баз знаний с Plane Pro.", + "upgrade_button": { + "text": "Обновить" + }, + "learn_more_button": { + "text": "Узнать больше" + }, + "download_button": { + "text": "Скачать данные", + "loading": "Скачивание" + }, + "tabs": { + "nested_pages": "Вложенные страницы", + "add_embeds": "Добавление встраиваемого контента", + "publish_pages": "Публикация страниц", + "comments": "Комментарии" + } + }, + "nested_pages_download_banner": { + "title": "Вложенные страницы требуют платного плана. Обновите, чтобы разблокировать." + } } } diff --git a/packages/i18n/src/locales/ru/work-item-type.json b/packages/i18n/src/locales/ru/work-item-type.json index 4911550df48..bda68e7378e 100644 --- a/packages/i18n/src/locales/ru/work-item-type.json +++ b/packages/i18n/src/locales/ru/work-item-type.json @@ -3,11 +3,25 @@ "label": "Типы рабочих элементов", "label_lowercase": "типы рабочих элементов", "settings": { - "title": "Типы рабочих элементов", + "description": "Настраивайте и добавляйте свои собственные свойства, чтобы адаптировать их к потребностям вашей команды.", + "cant_delete_default_message": "Невозможно удалить этот тип рабочего элемента, так как он установлен как тип по умолчанию для этого проекта.", + "set_as_default": "Установить по умолчанию", + "cant_set_default_inactive_message": "Активируйте этот тип перед установкой по умолчанию", + "set_default_confirmation": { + "title": "Установить как тип рабочего элемента по умолчанию", + "description": "Установка {name} по умолчанию импортирует его во все проекты этого рабочего пространства. Все новые рабочие элементы будут использовать этот тип по умолчанию.", + "confirm_button": "Установить по умолчанию" + }, "properties": { "title": "Пользовательские свойства", + "description": "Создавайте и настраивайте свойства.", "tooltip": "Каждый тип рабочего элемента имеет набор свойств по умолчанию, таких как Заголовок, Описание, Ответственный, Состояние, Приоритет, Дата начала, Дата окончания, Модуль, Цикл и т.д. Вы также можете настроить и добавить свои собственные свойства, чтобы адаптировать их к потребностям вашей команды.", "add_button": "Добавить новое свойство", + "project": { + "add_button": { + "import_from_workspace": "Импортировать из рабочего пространства" + } + }, "dropdown": { "label": "Тип свойства", "placeholder": "Выберите тип" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Создать новое пользовательское свойство", + "update": "Обновить пользовательское свойство" + }, "form": { "display_name": { "placeholder": "Заголовок" @@ -213,9 +231,50 @@ "description": "Новые свойства, которые вы добавите для этого типа рабочего элемента, будут отображаться здесь." } }, + "types": { + "title": "Типы", + "description": "Создавайте и настраивайте типы рабочих элементов со свойствами.", + "sort_options": { + "project_count": "Количество проектов, в которых используется" + }, + "filter_options": { + "show_active": "Показать активные", + "show_inactive": "Показать неактивные" + }, + "project": { + "add_button": { + "create_new": "Создать новый", + "import_from_workspace": "Импортировать из рабочего пространства" + }, + "banner": { + "with_access": "Включите типы рабочих элементов, чтобы импортировать типы с уровня рабочего пространства", + "without_access": "Типы рабочих элементов отключены. Обратитесь к администратору рабочего пространства, чтобы включить их в настройках рабочего пространства." + } + } + }, + "linked_properties": { + "title": "Пользовательские свойства", + "add_button": "Добавить свойства", + "modal": { + "title": "Добавить свойства", + "empty": { + "title": "Нет доступных свойств", + "description": "Все свойства уже связаны с этим типом." + } + }, + "unlink_confirmation": { + "title": "Отвязать свойство", + "description": "Отвязывание этого свойства приведёт к безвозвратному удалению всех его значений у всех рабочих элементов, использующих этот тип. Это действие нельзя отменить.", + "input_label": "Введите", + "input_label_suffix": "для продолжения:", + "confirm": "Отвязать свойство", + "loading": "Отвязывание" + } + }, "item_delete_confirmation": { "title": "Удалить этот тип", "description": "Удаление типов может привести к потере существующих данных.", + "can_disable_warning": "Хотите отключить этот тип вместо этого?", "primary_button": "Да, удалить", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Невозможно удалить тип рабочего элемента по умолчанию", "cannot_delete_work_item_type_with_associated_work_items": "Невозможно удалить тип рабочего элемента со связанными рабочими элементами" - }, - "can_disable_warning": "Хотите отключить этот тип вместо этого?" - }, - "cant_delete_default_message": "Невозможно удалить этот тип рабочего элемента, так как он установлен как тип по умолчанию для этого проекта.", - "set_as_default": "Установить по умолчанию", - "cant_set_default_inactive_message": "Активируйте этот тип перед установкой по умолчанию", - "set_default_confirmation": { - "title": "Установить как тип рабочего элемента по умолчанию", - "description": "Установка {name} по умолчанию импортирует его во все проекты этого рабочего пространства. Все новые рабочие элементы будут использовать этот тип по умолчанию.", - "confirm_button": "Установить по умолчанию" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Ошибка!", "message": { + "default": "Не удалось создать тип рабочего элемента. Пожалуйста, попробуйте снова!", "conflict": "Тип {name} уже существует. Выберите другое имя." } } @@ -269,6 +320,7 @@ "error": { "title": "Ошибка!", "message": { + "default": "Не удалось обновить тип рабочего элемента. Пожалуйста, попробуйте снова!", "conflict": "Тип {name} уже существует. Выберите другое имя." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Ошибка проверки!", + "title": "Сохранение разорвёт существующие связи", "content": { "intro": "У типа рабочего элемента {workItemTypeName} есть:", - "parent_items": "{count, plural, one {родительский рабочий элемент} few {родительских рабочих элемента} other {родительских рабочих элементов}}", + "parent_items": "{count, plural, one {Будет удалена # родительская связь} few {Будут удалены # родительские связи} many {Будет удалено # родительских связей} other {Будет удалено # родительских связей}}.", "child_items": "{count, plural, one {дочерний рабочий элемент} few {дочерних рабочих элемента} other {дочерних рабочих элементов}}", "parent_line_suffix_when_also_children": ", а также ", "footer": "Это изменение удалит родительские и дочерние связи у существующих рабочих элементов типа {workItemTypeName}." }, "confirm_input": { - "label": "Введите «Подтвердить», чтобы продолжить.", - "placeholder": "Подтвердить" + "label": "Введите «подтвердить», чтобы продолжить.", + "placeholder": "подтвердить" }, "error_toast": { "title": "Ошибка!", - "message": "Не удалось разорвать иерархию. Пожалуйста, попробуйте ещё раз." + "message": "Не удалось отвязать связи и сохранить. Пожалуйста, попробуйте ещё раз." }, "confirm_button": { - "loading": "Применение…", - "default": "Применить и отвязать" + "loading": "Сохранение", + "default": "Всё равно сохранить" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/ru/work-item.json b/packages/i18n/src/locales/ru/work-item.json index 9b007efa19f..df676a95bd1 100644 --- a/packages/i18n/src/locales/ru/work-item.json +++ b/packages/i18n/src/locales/ru/work-item.json @@ -20,6 +20,7 @@ "due_date": "Добавить срок выполнения", "parent": "Добавить родительский рабочий элемент", "sub_issue": "Добавить подэлемент", + "dependency": "Добавить зависимость", "relation": "Добавить связь", "link": "Добавить ссылку", "existing": "Добавить существующий рабочий элемент" @@ -110,6 +111,43 @@ "copy_link": { "success": "Ссылка на комментарий скопирована в буфер обмена", "error": "Ошибка при копировании ссылки на комментарий. Попробуйте позже." + }, + "replies": { + "create": { + "submit_button": "Добавить ответ", + "placeholder": "Добавить ответ" + }, + "toast": { + "fetch": { + "error": { + "message": "Не удалось получить ответы" + } + }, + "create": { + "success": { + "message": "Ответ успешно создан" + }, + "error": { + "message": "Не удалось создать ответ" + } + }, + "update": { + "success": { + "message": "Ответ успешно обновлён" + }, + "error": { + "message": "Не удалось обновить ответ" + } + }, + "delete": { + "success": { + "message": "Ответ успешно удалён" + }, + "error": { + "message": "Не удалось удалить ответ" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Снять выделение со всех" }, "open_in_full_screen": "Открыть рабочий элемент в полном экране", + "duplicate": { + "modal": { + "title": "Создать копию в другой проект", + "description1": "Это создаст копию рабочего элемента.", + "description2": "При дублировании все данные свойств будут удалены.", + "placeholder": "Выберите проект" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Рабочий элемент успешно дублирован" + }, + "error": { + "message": "Не удалось дублировать рабочий элемент" + } + } + }, + "pages": { + "link_pages": "Связать страницы", + "show_wiki_pages": "Показать страницы Wiki", + "link_pages_to": "Связать страницы с", + "linked_pages": "Связанные страницы", + "no_description": "Это пустая страница. Почему бы вам не написать что-нибудь внутри и не увидеть, как это отобразится здесь, как этот плейсхолдер", + "toasts": { + "link": { + "success": { + "title": "Страницы обновлены", + "message": "Страницы успешно обновлены" + }, + "error": { + "title": "Ошибка обновления страниц", + "message": "Ошибка обновления страниц" + } + }, + "remove": { + "success": { + "title": "Страница удалена", + "message": "Страница успешно удалена" + }, + "error": { + "title": "Ошибка удаления страницы", + "message": "Ошибка удаления страницы" + } + } + } + }, "vote": { "click_to_upvote": "Нажмите, чтобы проголосовать за", "click_to_downvote": "Нажмите, чтобы проголосовать против", @@ -241,54 +326,6 @@ "title": "Не удалось обновить рабочие элементы", "message": "Изменение состояния не разрешено для некоторых рабочих элементов. Убедитесь, что изменение состояния разрешено." } - }, - "workflows": { - "toggle": { - "title": "Включить рабочие процессы", - "description": "Настройте рабочие процессы для управления перемещением рабочих элементов", - "no_states_tooltip": "В рабочий процесс не добавлены состояния.", - "toast": { - "loading": { - "enabling": "Включение рабочих процессов", - "disabling": "Отключение рабочих процессов" - }, - "success": { - "title": "Успех!", - "message": "Рабочие процессы успешно включены." - }, - "error": { - "title": "Ошибка!", - "message": "Не удалось включить рабочие процессы. Пожалуйста, попробуйте снова." - } - } - }, - "heading": "Рабочие процессы", - "description": "Автоматизируйте переходы рабочих элементов и настройте правила, которые управляют тем, как задачи проходят через процесс вашего проекта.", - "add_button": "Добавить новый рабочий процесс", - "search": "Искать рабочие процессы", - "detail": { - "define": "Определить рабочий процесс", - "add_states": "Добавить состояния", - "unmapped_states": { - "title": "Обнаружены несопоставленные состояния", - "description": "Некоторые рабочие элементы выбранных типов сейчас находятся в состояниях, которых нет в этом рабочем процессе.", - "note": "Если вы включите этот рабочий процесс, эти элементы будут автоматически перемещены в начальное состояние этого рабочего процесса.", - "label": "Отсутствующие состояния", - "tooltip": "Некоторые рабочие элементы находятся в состояниях, которые не сопоставлены с этим рабочим процессом. Откройте рабочий процесс, чтобы проверить это." - } - }, - "select_states": { - "empty_state": { - "title": "Все состояния используются", - "description": "Все состояния, определённые для этого проекта, уже присутствуют в текущем рабочем процессе." - } - }, - "default_footer": { - "fallback_message": "Этот рабочий процесс применяется к любому типу рабочего элемента, который не назначен ни одному рабочему процессу." - }, - "create": { - "heading": "Создать новый рабочий процесс" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/ru/workspace-settings.json b/packages/i18n/src/locales/ru/workspace-settings.json index 4a9c3f06353..58a53eb624a 100644 --- a/packages/i18n/src/locales/ru/workspace-settings.json +++ b/packages/i18n/src/locales/ru/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Оплата и тарифы", + "description": "Выберите ваш тариф, управляйте подписками и легко переходите на более высокий план по мере роста ваших потребностей.", "title": "Оплата и тарифы", "current_plan": "Текущий тариф", "free_plan": "Используется бесплатный тариф", "view_plans": "Посмотреть тарифы" }, "exports": { + "heading": "Экспорт", + "description": "Экспортируйте данные проекта в различных форматах и получайте доступ к истории экспортов со ссылками для скачивания.", "title": "Экспорт", "exporting": "Экспортируется", "previous_exports": "Предыдущие экспорты", "export_separate_files": "Экспорт в отдельные файлы", + "exporting_projects": "Экспорт проекта", + "format": "Формат", "filters_info": "Примените фильтры для экспорта конкретных рабочих элементов по вашим критериям.", "modal": { "title": "Экспорт в", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Вебхуки", + "description": "Автоматизируйте уведомления внешним сервисам при возникновении событий проекта.", "title": "Вебхуки", "add_webhook": "Добавить вебхук", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Интеграции", + "heading": "Интеграции", + "description": "Подключайтесь к популярным инструментам и сервисам для синхронизации работы в вашей экосистеме.", "page_title": "Работайте с данными Plane в доступных приложениях или в собственных.", "page_description": "Просмотрите все интеграции, используемые этим рабочим пространством или вами." }, "imports": { - "title": "Импорт" + "title": "Импорт", + "heading": "Импорт", + "description": "Подключайтесь и импортируйте данные из существующих инструментов управления проектами для оптимизации интеграции рабочих процессов." }, "worklogs": { - "title": "Рабочие журналы" + "title": "Рабочие журналы", + "heading": "Рабочие журналы", + "description": "Скачивайте рабочие журналы (табели учёта рабочего времени) для любого участника любого проекта." }, "group_syncing": { "title": "Синхронизация групп", @@ -242,7 +256,10 @@ "description": "Настройте свой домен и включите единый вход" }, "project_states": { - "title": "Состояния проектов" + "title": "Состояния проектов", + "heading": "Обзор прогресса по всем проектам.", + "description": "Состояния проектов — это эксклюзивная функция Plane для отслеживания прогресса всех ваших проектов по любому свойству проекта.", + "go_to_settings": "Перейти в настройки" }, "projects": { "title": "Проекты", @@ -252,6 +269,16 @@ "labels": "Метки проектов" } }, + "templates": { + "title": "Шаблоны", + "heading": "Шаблоны", + "description": "Экономьте 80% времени, затрачиваемого на создание проектов, рабочих элементов и страниц, используя шаблоны." + }, + "relations": { + "title": "Связи", + "heading": "Связи", + "description": "Создавайте и управляйте типами связей, которые соединяют рабочие элементы в вашем рабочем пространстве." + }, "cancel_trial": { "title": "Сначала отмените свою пробную версию.", "description": "У вас есть активная пробная версия одного из наших платных планов. Пожалуйста, отмените ее сначала, чтобы продолжить.", @@ -263,6 +290,7 @@ "cancel_error_message": "Попробуйте снова, пожалуйста." }, "applications": { + "internal": "Внутренний", "title": "Приложения", "applicationId_copied": "ID приложения скопирован в буфер обмена", "clientId_copied": "ID клиента скопирован в буфер обмена", @@ -271,10 +299,61 @@ "your_apps": "Ваши приложения", "connect": "Подключить", "connected": "Подключено", + "disconnect": "Отключить", "install": "Установить", "installed": "Установлено", "configure": "Настроить", "app_available": "Вы сделали это приложение доступным для использования с рабочим пространством Plane", + "app_credentials_regenrated": { + "title": "Учетные данные приложения были успешно сгенерированы заново", + "description": "Замените секрет клиента во всех местах, где он используется. Предыдущий секрет больше недействителен." + }, + "app_created": { + "title": "Приложение успешно создано", + "description": "Используйте учетные данные, чтобы установить приложение в рабочее пространство Plane" + }, + "installed_apps": "Установленные приложения", + "all_apps": "Все приложения", + "internal_apps": "Внутренние приложения", + "app_name_title": "Как вы назовете это приложение", + "app_description_title": { + "label": "Длинное описание", + "placeholder": "Напишите подробное описание для маркетплейса. Нажмите '/' для команд." + }, + "authorization_grant_type": { + "title": "Тип подключения", + "description": "Выберите, должно ли ваше приложение быть установлено один раз для рабочего пространства или позволить каждому пользователю подключить свою учетную запись" + }, + "website": { + "title": "Веб-сайт", + "description": "Ссылка на веб-сайт вашего приложения.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Создатель приложений", + "description": "Лицо или организация, создающая приложение." + }, + "app_maker_error": "Создатель приложения обязателен", + "setup_url": { + "label": "URL настройки", + "description": "Пользователи будут перенаправлены на этот URL при установке приложения.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL вебхука", + "description": "Здесь мы будем отправлять события вебхука и обновления из рабочих пространств, где установлено ваше приложение.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Секрет вебхука", + "description": "Секрет, используемый для проверки входящих запросов вебхука.", + "placeholder": "Введите случайный секретный ключ" + }, + "redirect_uris": { + "label": "URI перенаправления (через пробел)", + "description": "Пользователи будут перенаправлены на этот путь после аутентификации через Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Подключите рабочее пространство Plane, чтобы начать использование", "client_id_and_secret": "ID и Секрет Клиента", "client_id_and_secret_description": "Скопируйте и сохраните этот секретный ключ. Вы не сможете увидеть этот ключ после нажатия Закрыть.", @@ -286,23 +365,13 @@ "slug_already_exists": "Слаг уже существует", "failed_to_create_application": "Не удалось создать приложение", "upload_logo": "Загрузить Логотип", - "app_name_title": "Как вы назовете это приложение", "app_name_error": "Название приложения обязательно", "app_short_description_title": "Дайте краткое описание этому приложению", "app_short_description_error": "Краткое описание приложения обязательно", - "app_description_title": { - "label": "Длинное описание", - "placeholder": "Напишите подробное описание для маркетплейса. Нажмите '/' для команд." - }, - "authorization_grant_type": { - "title": "Тип подключения", - "description": "Выберите, должно ли ваше приложение быть установлено один раз для рабочего пространства или позволить каждому пользователю подключить свою учетную запись" - }, "app_description_error": "Описание приложения обязательно", "app_slug_title": "Слаг приложения", "app_slug_error": "Слаг приложения обязателен", - "app_maker_title": "Создатель приложения", - "app_maker_error": "Создатель приложения обязателен", + "invalid_website_error": "Некорректный веб-сайт", "webhook_url_title": "URL вебхука", "webhook_url_error": "URL вебхука обязателен", "invalid_webhook_url_error": "Недействительный URL вебхука", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Введите источники через пробел, откуда приложение сможет делать запросы, например app.com example.com", "create_app": "Создать приложение", "update_app": "Обновить приложение", + "build_your_own_app": "Создайте собственное приложение", + "edit_app_details": "Редактировать детали приложения", "regenerate_client_secret_description": "Перегенерировать секрет клиента. После перегенерации вы сможете скопировать ключ или скачать его в файл CSV.", "regenerate_client_secret": "Перегенерировать секрет клиента", "regenerate_client_secret_confirm_title": "Вы уверены, что хотите перегенерировать секрет клиента?", @@ -362,7 +433,6 @@ "video_url_title": "URL видео", "video_url_error": "URL видео обязателен", "invalid_video_url_error": "Неверный URL видео", - "setup_url_title": "URL настройки", "setup_url_error": "URL настройки обязателен", "invalid_setup_url_error": "Неверный URL настройки", "configuration_url_title": "URL настройки", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Неверный файл или превышен лимит размера ({size} MB)", "uploading": "Загрузка...", "upload_and_save": "Загрузить и сохранить", - "app_credentials_regenrated": { - "title": "Учетные данные приложения были успешно сгенерированы заново", - "description": "Замените секрет клиента во всех местах, где он используется. Предыдущий секрет больше недействителен." - }, - "app_created": { - "title": "Приложение успешно создано", - "description": "Используйте учетные данные, чтобы установить приложение в рабочее пространство Plane" - }, - "installed_apps": "Установленные приложения", - "all_apps": "Все приложения", - "internal_apps": "Внутренние приложения", - "website": { - "title": "Веб-сайт", - "description": "Ссылка на веб-сайт вашего приложения.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Создатель приложений", - "description": "Лицо или организация, создающая приложение." - }, - "setup_url": { - "label": "URL настройки", - "description": "Пользователи будут перенаправлены на этот URL при установке приложения.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL вебхука", - "description": "Здесь мы будем отправлять события вебхука и обновления из рабочих пространств, где установлено ваше приложение.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI перенаправления (через пробел)", - "description": "Пользователи будут перенаправлены на этот путь после аутентификации через Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Запрос на установку", "app_consent_no_access_description": "Это приложение можно установить только после установки администратором рабочего пространства. Свяжитесь с администратором вашего рабочего пространства, чтобы продолжить.", + "app_consent_unapproved_title": "Это приложение ещё не было рассмотрено или одобрено Plane.", + "app_consent_unapproved_description": "Убедитесь, что вы доверяете этому приложению, прежде чем подключить его к своему рабочему пространству.", + "go_to_app": "Перейти к приложению", "enable_app_mentions": "Включить упоминания приложения", "enable_app_mentions_tooltip": "Когда эта функция включена, пользователи могут упоминать или назначать рабочие элементы этому приложению.", "scopes": "Области доступа", @@ -433,15 +472,18 @@ "profile": "Доступ к информации профиля пользователя", "agents": "Доступ к агентам и всем связанным с ними сущностям", "assets": "Доступ к активам и всем связанным с ними сущностям" - }, - "build_your_own_app": "Создайте собственное приложение", - "edit_app_details": "Редактировать детали приложения", - "internal": "Внутренний" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Смотрите, как ваша работа становится более интеллектуальной и быстрой с помощью ИИ, которая напрямую связана с вашей работой и базой знаний." + }, + "runners": { + "title": "Plane Runner", + "heading": "Скрипты", + "new_script": "Новый скрипт", + "description": "Автоматизируйте рабочие процессы с помощью пользовательских скриптов и правил автоматизации." } }, "empty_state": { diff --git a/packages/i18n/src/locales/ru/workspace.json b/packages/i18n/src/locales/ru/workspace.json index 74a1a0c9c9b..1bcd7202166 100644 --- a/packages/i18n/src/locales/ru/workspace.json +++ b/packages/i18n/src/locales/ru/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Объём и спрос", "custom": "Пользовательская аналитика" }, + "total": "Общее количество {entity}", + "started_work_items": "Начатые {entity}", + "backlog_work_items": "{entity} в бэклоге", + "un_started_work_items": "Не начатые {entity}", + "completed_work_items": "Завершённые {entity}", + "project_insights": "Аналитика проекта", + "summary_of_projects": "Сводка по проектам", + "all_projects": "Все проекты", + "trend_on_charts": "Тренд на графиках", + "active_projects": "Активные проекты", + "customized_insights": "Индивидуальные аналитические данные", + "created_vs_resolved": "Создано vs Решено", "empty_state": { - "customized_insights": { - "description": "Назначенные вам рабочие элементы, разбитые по статусам, появятся здесь.", - "title": "Данных пока нет" + "project_insights": { + "title": "Данных пока нет", + "description": "Назначенные вам рабочие элементы, разбитые по статусам, появятся здесь." }, "created_vs_resolved": { - "description": "Созданные и решённые со временем рабочие элементы появятся здесь.", - "title": "Данных пока нет" + "title": "Данных пока нет", + "description": "Созданные и решённые со временем рабочие элементы появятся здесь." }, - "project_insights": { + "customized_insights": { "title": "Данных пока нет", "description": "Назначенные вам рабочие элементы, разбитые по статусам, появятся здесь." }, @@ -132,29 +144,11 @@ "description": "Аналитика тенденций intake появится здесь. Добавьте рабочие элементы в intake, чтобы начать отслеживать тенденции." } }, - "created_vs_resolved": "Создано vs Решено", - "customized_insights": "Индивидуальные аналитические данные", - "backlog_work_items": "{entity} в бэклоге", - "active_projects": "Активные проекты", - "trend_on_charts": "Тренд на графиках", - "all_projects": "Все проекты", - "summary_of_projects": "Сводка по проектам", - "project_insights": "Аналитика проекта", - "started_work_items": "Начатые {entity}", - "total_work_items": "Общее количество {entity}", - "total_projects": "Всего проектов", - "total_admins": "Всего администраторов", - "total_users": "Всего пользователей", - "total_intake": "Общий доход", - "un_started_work_items": "Не начатые {entity}", - "total_guests": "Всего гостей", - "completed_work_items": "Завершённые {entity}", - "total": "Общее количество {entity}", + "upgrade_to_plan": "Обновитесь до {plan}, чтобы разблокировать {tab}", + "workitem_resolved_vs_pending": "Решенные vs ожидающие рабочие элементы", "projects_by_status": "Проекты по статусу", "active_users": "Активные пользователи", - "intake_trends": "Тенденции приёма", - "workitem_resolved_vs_pending": "Решенные vs ожидающие рабочие элементы", - "upgrade_to_plan": "Обновитесь до {plan}, чтобы разблокировать {tab}" + "intake_trends": "Тенденции приёма" }, "workspace_projects": { "label": "{count, plural, one {Проект} other {Проекты}}", @@ -303,7 +297,10 @@ }, "private": { "title": "Пока нет частных страниц", - "description": "Держите свои частные мысли здесь. Когда вы будете готовы поделиться, команда всего в одном клике." + "description": "Держите свои частные мысли здесь. Когда вы будете готовы поделиться, команда всего в одном клике.", + "primary_button": { + "text": "Создать вашу первую страницу" + } }, "public": { "title": "Пока нет страниц рабочего пространства", @@ -315,6 +312,10 @@ "archived": { "title": "Пока нет архивированных страниц", "description": "Архивируйте страницы, которые не на вашем радаре. Получите к ним доступ здесь, когда это необходимо." + }, + "shared": { + "title": "Пока нет общих страниц", + "description": "Страницы, которыми с вами поделились, будут отображаться здесь." } } }, diff --git a/packages/i18n/src/locales/sk/auth.json b/packages/i18n/src/locales/sk/auth.json index 20d743a687c..703e269e2ce 100644 --- a/packages/i18n/src/locales/sk/auth.json +++ b/packages/i18n/src/locales/sk/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-mail", - "placeholder": "meno@spolocnost.sk", - "errors": { - "required": "E-mail je povinný", - "invalid": "E-mail je neplatný" - } - }, - "password": { - "label": "Heslo", - "set_password": "Nastaviť heslo", - "placeholder": "Zadajte heslo", - "confirm_password": { - "label": "Potvrďte heslo", - "placeholder": "Potvrďte heslo" - }, - "current_password": { - "label": "Aktuálne heslo" - }, - "new_password": { - "label": "Nové heslo", - "placeholder": "Zadajte nové heslo" - }, - "change_password": { - "label": { - "default": "Zmeniť heslo", - "submitting": "Mení sa heslo" - } - }, - "errors": { - "match": "Heslá sa nezhodujú", - "empty": "Zadajte prosím svoje heslo", - "length": "Dĺžka hesla by mala byť viac ako 8 znakov", - "strength": { - "weak": "Heslo je slabé", - "strong": "Heslo je silné" - } - }, - "submit": "Nastaviť heslo", - "toast": { - "change_password": { - "success": { - "title": "Úspech!", - "message": "Heslo bolo úspešne zmenené." - }, - "error": { - "title": "Chyba!", - "message": "Niečo sa pokazilo. Skúste to prosím znova." - } - } - } - }, - "unique_code": { - "label": "Jedinečný kód", - "placeholder": "123456", - "paste_code": "Vložte kód zaslaný na váš e-mail", - "requesting_new_code": "Žiadam o nový kód", - "sending_code": "Odosielam kód" - }, - "already_have_an_account": "Už máte účet?", - "login": "Prihlásiť sa", - "create_account": "Vytvoriť účet", - "new_to_plane": "Nový v Plane?", - "back_to_sign_in": "Späť na prihlásenie", - "resend_in": "Znova odoslať za {seconds} sekúnd", - "sign_in_with_unique_code": "Prihlásiť sa pomocou jedinečného kódu", - "forgot_password": "Zabudli ste heslo?", - "username": { - "label": "Používateľské meno", - "placeholder": "Zadajte svoje používateľské meno" - } - }, - "sign_up": { - "header": { - "label": "Vytvorte účet a začnite spravovať prácu so svojím tímom.", - "step": { - "email": { - "header": "Registrácia", - "sub_header": "" - }, - "password": { - "header": "Registrácia", - "sub_header": "Zaregistrujte sa pomocou kombinácie e-mailu a hesla." - }, - "unique_code": { - "header": "Registrácia", - "sub_header": "Zaregistrujte sa pomocou jedinečného kódu zaslaného na vyššie uvedenú e-mailovú adresu." - } - } - }, - "errors": { - "password": { - "strength": "Skúste nastaviť silné heslo, aby ste mohli pokračovať" - } - } - }, - "sign_in": { - "header": { - "label": "Prihláste sa a začnite spravovať prácu so svojím tímom.", - "step": { - "email": { - "header": "Prihlásiť sa alebo zaregistrovať", - "sub_header": "" - }, - "password": { - "header": "Prihlásiť sa alebo zaregistrovať", - "sub_header": "Použite svoju kombináciu e-mailu a hesla na prihlásenie." - }, - "unique_code": { - "header": "Prihlásiť sa alebo zaregistrovať", - "sub_header": "Prihláste sa pomocou jedinečného kódu zaslaného na vyššie uvedenú e-mailovú adresu." - } - } - } - }, - "forgot_password": { - "title": "Obnovte svoje heslo", - "description": "Zadajte overenú e-mailovú adresu vášho používateľského účtu a my vám zašleme odkaz na obnovenie hesla.", - "email_sent": "Odoslali sme odkaz na obnovenie na vašu e-mailovú adresu", - "send_reset_link": "Odoslať odkaz na obnovenie", - "errors": { - "smtp_not_enabled": "Vidíme, že váš správca neaktivoval SMTP, nebudeme môcť odoslať odkaz na obnovenie hesla" - }, - "toast": { - "success": { - "title": "E-mail odoslaný", - "message": "Skontrolujte si doručenú poštu pre odkaz na obnovenie hesla. Ak sa neobjaví v priebehu niekoľkých minút, skontrolujte si spam." - }, - "error": { - "title": "Chyba!", - "message": "Niečo sa pokazilo. Skúste to prosím znova." - } - } - }, - "reset_password": { - "title": "Nastaviť nové heslo", - "description": "Zabezpečte svoj účet silným heslom" - }, - "set_password": { - "title": "Zabezpečte svoj účet", - "description": "Nastavenie hesla vám pomôže bezpečne sa prihlásiť" - }, - "sign_out": { - "toast": { - "error": { - "title": "Chyba!", - "message": "Nepodarilo sa odhlásiť. Skúste to prosím znova." - } - } - }, - "ldap": { - "header": { - "label": "Pokračovať s {ldapProviderName}", - "sub_header": "Zadajte svoje prihlasovacie údaje {ldapProviderName}" - } - } - }, "sso": { "header": "Identita", "description": "Nakonfigurujte svoju doménu pre prístup k bezpečnostným funkciám vrátane jednotného prihlásenia.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-mail", + "placeholder": "meno@spolocnost.sk", + "errors": { + "required": "E-mail je povinný", + "invalid": "E-mail je neplatný" + } + }, + "password": { + "label": "Heslo", + "set_password": "Nastaviť heslo", + "placeholder": "Zadajte heslo", + "confirm_password": { + "label": "Potvrďte heslo", + "placeholder": "Potvrďte heslo" + }, + "current_password": { + "label": "Aktuálne heslo" + }, + "new_password": { + "label": "Nové heslo", + "placeholder": "Zadajte nové heslo" + }, + "change_password": { + "label": { + "default": "Zmeniť heslo", + "submitting": "Mení sa heslo" + } + }, + "errors": { + "match": "Heslá sa nezhodujú", + "empty": "Zadajte prosím svoje heslo", + "length": "Dĺžka hesla by mala byť viac ako 8 znakov", + "strength": { + "weak": "Heslo je slabé", + "strong": "Heslo je silné" + } + }, + "submit": "Nastaviť heslo", + "toast": { + "change_password": { + "success": { + "title": "Úspech!", + "message": "Heslo bolo úspešne zmenené." + }, + "error": { + "title": "Chyba!", + "message": "Niečo sa pokazilo. Skúste to prosím znova." + } + } + } + }, + "unique_code": { + "label": "Jedinečný kód", + "placeholder": "123456", + "paste_code": "Vložte kód zaslaný na váš e-mail", + "requesting_new_code": "Žiadam o nový kód", + "sending_code": "Odosielam kód" + }, + "already_have_an_account": "Už máte účet?", + "login": "Prihlásiť sa", + "create_account": "Vytvoriť účet", + "new_to_plane": "Nový v Plane?", + "back_to_sign_in": "Späť na prihlásenie", + "resend_in": "Znova odoslať za {seconds} sekúnd", + "sign_in_with_unique_code": "Prihlásiť sa pomocou jedinečného kódu", + "forgot_password": "Zabudli ste heslo?", + "username": { + "label": "Používateľské meno", + "placeholder": "Zadajte svoje používateľské meno" + } + }, + "sign_up": { + "header": { + "label": "Vytvorte účet a začnite spravovať prácu so svojím tímom.", + "step": { + "email": { + "header": "Registrácia", + "sub_header": "" + }, + "password": { + "header": "Registrácia", + "sub_header": "Zaregistrujte sa pomocou kombinácie e-mailu a hesla." + }, + "unique_code": { + "header": "Registrácia", + "sub_header": "Zaregistrujte sa pomocou jedinečného kódu zaslaného na vyššie uvedenú e-mailovú adresu." + } + } + }, + "errors": { + "password": { + "strength": "Skúste nastaviť silné heslo, aby ste mohli pokračovať" + } + } + }, + "sign_in": { + "header": { + "label": "Prihláste sa a začnite spravovať prácu so svojím tímom.", + "step": { + "email": { + "header": "Prihlásiť sa alebo zaregistrovať", + "sub_header": "" + }, + "password": { + "header": "Prihlásiť sa alebo zaregistrovať", + "sub_header": "Použite svoju kombináciu e-mailu a hesla na prihlásenie." + }, + "unique_code": { + "header": "Prihlásiť sa alebo zaregistrovať", + "sub_header": "Prihláste sa pomocou jedinečného kódu zaslaného na vyššie uvedenú e-mailovú adresu." + } + } + } + }, + "forgot_password": { + "title": "Obnovte svoje heslo", + "description": "Zadajte overenú e-mailovú adresu vášho používateľského účtu a my vám zašleme odkaz na obnovenie hesla.", + "email_sent": "Odoslali sme odkaz na obnovenie na vašu e-mailovú adresu", + "send_reset_link": "Odoslať odkaz na obnovenie", + "errors": { + "smtp_not_enabled": "Vidíme, že váš správca neaktivoval SMTP, nebudeme môcť odoslať odkaz na obnovenie hesla" + }, + "toast": { + "success": { + "title": "E-mail odoslaný", + "message": "Skontrolujte si doručenú poštu pre odkaz na obnovenie hesla. Ak sa neobjaví v priebehu niekoľkých minút, skontrolujte si spam." + }, + "error": { + "title": "Chyba!", + "message": "Niečo sa pokazilo. Skúste to prosím znova." + } + } + }, + "reset_password": { + "title": "Nastaviť nové heslo", + "description": "Zabezpečte svoj účet silným heslom" + }, + "set_password": { + "title": "Zabezpečte svoj účet", + "description": "Nastavenie hesla vám pomôže bezpečne sa prihlásiť" + }, + "sign_out": { + "toast": { + "error": { + "title": "Chyba!", + "message": "Nepodarilo sa odhlásiť. Skúste to prosím znova." + } + } + }, + "ldap": { + "header": { + "label": "Pokračovať s {ldapProviderName}", + "sub_header": "Zadajte svoje prihlasovacie údaje {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/sk/automation.json b/packages/i18n/src/locales/sk/automation.json index aa940616931..3e7dbc5b45f 100644 --- a/packages/i18n/src/locales/sk/automation.json +++ b/packages/i18n/src/locales/sk/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Späť", "next": "Pridať akciu" + }, + "warning": { + "disabled_trigger_switching": "Typ spúšťača nie je možné po vytvorení zmeniť" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Vyberte možnosť", "handler_name": { "add_comment": "Pridať komentár", - "change_property": "Zmeniť vlastnosť" + "change_property": "Zmeniť vlastnosť", + "run_script": "Spustiť skript" }, "configuration": { "label": "Konfigurácia", @@ -89,6 +93,9 @@ "comment_block": { "title": "Pridať komentár" }, + "run_script_block": { + "title": "Spustiť skript" + }, "change_property_block": { "title": "Zmeniť vlastnosť" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Názov automatizácie", + "scope": "Rozsah", + "projects": "Projekty", "last_run_on": "Posledné spustenie", "created_on": "Vytvorené", "last_updated_on": "Posledná aktualizácia", @@ -230,6 +239,35 @@ "description": "Automatizácie sú spôsob automatizácie úloh vo vašom projekte.", "sub_description": "Získajte späť 80% svojho administratívneho času, keď používate automatizácie." } + }, + "global_automations": { + "project_select": { + "label": "Vyberte projekty, v ktorých sa má táto automatizácia spúšťať", + "all_projects": { + "label": "Všetky projekty", + "description": "Automatizácia sa bude spúšťať pre všetky projekty v pracovnom priestore." + }, + "select_projects": { + "label": "Vybrať projekty", + "description": "Automatizácia sa bude spúšťať pre vybrané projekty v pracovnom priestore.", + "placeholder": "Vybrať projekty" + } + }, + "settings": { + "sidebar_label": "Automatizácie", + "title": "Automatizácie", + "description": "Štandardizujte procesy v celom pracovnom priestore pomocou globálnych automatizácií." + }, + "table": { + "scope": { + "global": "Globálny", + "project": { + "label": "Projekt", + "multiple": "Viacero", + "all": "Všetky" + } + } + } } } } diff --git a/packages/i18n/src/locales/sk/common.json b/packages/i18n/src/locales/sk/common.json index 66938ad444b..4fc339cece6 100644 --- a/packages/i18n/src/locales/sk/common.json +++ b/packages/i18n/src/locales/sk/common.json @@ -17,6 +17,7 @@ "no": "Nie", "ok": "OK", "name": "Názov", + "unknown_user": "Neznámy používateľ", "description": "Popis", "search": "Hľadať", "add_member": "Pridať člena", @@ -56,7 +57,8 @@ "no_worklogs": "Zatiaľ žiadne záznamy práce", "no_history": "Zatiaľ žiadna história" }, - "appearance": "Vzhľad", + "preferences": "Predvoľby", + "language_and_time": "Jazyk a čas", "notifications": "Oznámenia", "workspaces": "Pracovné priestory", "create_workspace": "Vytvoriť pracovný priestor", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Niečo sa pokazilo. Skúste to prosím znova.", "load_more": "Načítať viac", "select_or_customize_your_interface_color_scheme": "Vyberte alebo prispôsobte farebnú schému rozhrania.", + "timezone_setting": "Aktuálne nastavenie časového pásma.", + "language_setting": "Zvoľte jazyk používaný v používateľskom rozhraní.", + "settings_moved_to_preferences": "Nastavenia časového pásma a jazyka boli presunuté do predvolieb.", + "go_to_preferences": "Prejsť na predvoľby", "select_the_cursor_motion_style_that_feels_right_for_you": "Vyberte štýl pohybu kurzora, ktorý vám vyhovuje.", "theme": "Téma", "smooth_cursor": "Plynulý kurzor", @@ -163,6 +169,7 @@ "project_created_successfully": "Projekt bol úspešne vytvorený", "project_created_successfully_description": "Projekt bol úspešne vytvorený. Teraz môžete začať pridávať pracovné položky.", "project_name_already_taken": "Názov projektu je už použitý.", + "project_name_cannot_contain_special_characters": "Názov projektu nesmie obsahovať špeciálne znaky.", "project_identifier_already_taken": "Identifikátor projektu je už použitý.", "project_cover_image_alt": "Úvodný obrázok projektu", "name_is_required": "Názov je povinný", @@ -207,6 +214,7 @@ "issues": "Pracovné položky", "cycles": "Cykly", "modules": "Moduly", + "pages": "Stránky", "intake": "Príjem", "renew": "Obnoviť", "preview": "Náhľad", @@ -298,6 +306,7 @@ "start_date": "Dátum začiatku", "end_date": "Dátum ukončenia", "due_date": "Termín", + "target_date": "Cieľový dátum", "estimate": "Odhad", "change_parent_issue": "Zmeniť nadradenú pracovnú položku", "remove_parent_issue": "Odstrániť nadradenú pracovnú položku", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Nové heslo musí byť odlišné od starého hesla", "edited": "Upravené", "bot": "Bot", + "settings_description": "Spravujte predvoľby svojho účtu, pracovného priestoru a projektu na jednom mieste. Prepínajte medzi kartami a jednoducho konfigurujte.", + "back_to_workspace": "Späť do pracovného priestoru", "upgrade_request": "Požadujte od správcu pracovného priestoru upgrade.", "copied_to_clipboard": "Skopírované do schránky", "copied_to_clipboard_description": "URL bola úspešne skopírovaná do schránky", @@ -422,6 +433,9 @@ "modules": "Moduly", "labels": "Štítky", "label": "Štítok", + "admins": "Administrátori", + "users": "Používatelia", + "guests": "Hostia", "assignees": "Priradení", "assignee": "Priradené", "created_by": "Vytvoril", @@ -451,6 +465,8 @@ "work_item": "Pracovná položka", "work_items": "Pracovné položky", "sub_work_item": "Podriadená pracovná položka", + "views": "Pohľady", + "pages": "Stránky", "add": "Pridať", "warning": "Varovanie", "updating": "Aktualizácia", @@ -496,7 +512,7 @@ "workspace_level": "Úroveň pracovného priestoru", "order_by": { "label": "Triediť podľa", - "manual": "Manuálne", + "manual": "Manuálne - Poradie", "last_created": "Naposledy vytvorené", "last_updated": "Naposledy aktualizované", "start_date": "Dátum začiatku", @@ -532,6 +548,7 @@ "continue": "Pokračovať", "resend": "Znova odoslať", "relations": "Vzťahy", + "dependencies": "Závislosti", "errors": { "default": { "title": "Chyba!", @@ -563,11 +580,27 @@ "quarter": "Kvartál", "press_for_commands": "Stlačte '/' pre príkazy", "click_to_add_description": "Kliknite pre pridanie popisu", + "on_track": "Na správnej ceste", + "off_track": "Mimo plán", + "at_risk": "V ohrození", + "timeline": "Časová os", + "completion": "Dokončenie", + "upcoming": "Nadchádzajúce", + "completed": "Dokončené", + "in_progress": "Prebieha", + "planned": "Plánované", + "paused": "Pozastavené", "search": { "label": "Hľadať", "placeholder": "Zadajte hľadaný výraz", "no_matches_found": "Nenašli sa žiadne zhody", - "no_matching_results": "Žiadne zodpovedajúce výsledky" + "no_matching_results": "Žiadne zodpovedajúce výsledky", + "min_chars": "Pre vyhľadávanie zadajte aspoň {count} znakov", + "error": "Chyba pri načítavaní výsledkov vyhľadávania", + "no_results": { + "title": "Žiadne zodpovedajúce výsledky", + "description": "Odstráňte kritériá vyhľadávania, aby ste videli všetky výsledky" + } }, "actions": { "edit": "Upraviť", @@ -584,7 +617,9 @@ "clear_sorting": "Vymazať triedenie", "show_weekends": "Zobraziť víkendy", "enable": "Povoliť", - "disable": "Zakázať" + "disable": "Zakázať", + "copy_markdown": "Kopírovať markdown", + "reply": "Odpovedať" }, "name": "Názov", "discard": "Zahodiť", @@ -597,6 +632,7 @@ "disabled": "Zakázané", "mandate": "Mandát", "mandatory": "Povinné", + "global": "Globálny", "yes": "Áno", "no": "Nie", "please_wait": "Prosím čakajte", @@ -606,6 +642,7 @@ "or": "alebo", "next": "Ďalej", "back": "Späť", + "retry": "Skúsiť znova", "cancelling": "Rušenie", "configuring": "Konfigurácia", "clear": "Vymazať", @@ -660,31 +697,27 @@ "deactivated_user": "Deaktivovaný používateľ", "apply": "Použiť", "applying": "Používanie", - "users": "Používatelia", - "admins": "Administrátori", - "guests": "Hostia", - "on_track": "Na správnej ceste", - "off_track": "Mimo plán", - "at_risk": "V ohrození", - "timeline": "Časová os", - "completion": "Dokončenie", - "upcoming": "Nadchádzajúce", - "completed": "Dokončené", - "in_progress": "Prebieha", - "planned": "Plánované", - "paused": "Pozastavené", + "overview": "Prehľad", "no_of": "Počet {entity}", "resolved": "Vyriešené", + "get_started": "Začať", "worklogs": "Pracovné záznamy", "project_updates": "Aktualizácie projektov", - "overview": "Prehľad", "workflows": "Vorkflou", "templates": "Šablóny", + "business": "Biznis", "members_and_teamspaces": "Členovia a tímspejse", + "recurring_work_items": "Opakujúce sa pracovné položky", + "milestones": "Míľniky", "open_in_full_screen": "Otvoriť {page} na celú obrazovku", "details": "Podrobnosti", "project_structure": "Štruktúra projektu", - "custom_properties": "Vlastné vlastnosti" + "custom_properties": "Vlastné vlastnosti", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Os X", @@ -790,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane sa nespustil. Toto môže byť spôsobené tým, že sa jedna alebo viac služieb Plane nepodarilo spustiť.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Vyberte View Logs z setup.sh a Docker logov, aby ste si boli istí." }, + "customize_navigation": "Prispôsobiť navigáciu", + "personal": "Osobné", + "accordion_navigation_control": "Harmonická navigácia bočného panela", + "horizontal_navigation_bar": "Navigácia s kartami", + "show_limited_projects_on_sidebar": "Zobraziť obmedzený počet projektov v bočnom paneli", + "enter_number_of_projects": "Zadajte počet projektov", + "pin": "Pripnúť", + "unpin": "Odopnúť", "workspace_dashboards": "Dešbordy", "pi_chat": "AI Čet", "in_app": "V aplikácii", "forms": "Formuláre", - "choose_workspace_for_integration": "Vyberte pracovný priestor pre pripojenie tejto aplikácie", - "integrations_description": "Aplikácie, ktoré fungujú s Plane, musia byť pripojené k pracovnom priestoru, kde ste správca.", - "create_a_new_workspace": "Vytvoriť nový pracovný priestor", - "learn_more_about_workspaces": "Zjistit více o pracovních prostorech", - "no_workspaces_to_connect": "Žádné pracovní prostory k připojení", - "no_workspaces_to_connect_description": "Musíte vytvořit pracovní prostor, abyste mohli připojit integraci a šablony", + "milestones": "Míľniky", + "milestones_description": "Míľniky poskytujú vrstvu na zjednotenie pracovných položiek k spoločným dátumom dokončenia.", "file_upload": { "upload_text": "Kliknite sem na nahratie súboru", "drag_drop_text": "Drag and Drop", "processing": "Spracováva sa", - "invalid": "Neplatný typ súboru", + "invalid_file_type": "Neplatný typ súboru", "missing_fields": "Chýbajúce polia", "success": "{fileName} nahraný!" }, - "project_name_cannot_contain_special_characters": "Názov projektu nesmie obsahovať špeciálne znaky.", "date": "Dátum", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/sk/editor.json b/packages/i18n/src/locales/sk/editor.json index f48c4abe3cf..80593079aaf 100644 --- a/packages/i18n/src/locales/sk/editor.json +++ b/packages/i18n/src/locales/sk/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Prosím, zadajte platnú URL adresu." } + }, + "ai_block": { + "content": { + "placeholder": "Opíšte obsah tohto bloku", + "generated_here": "Tu bude vygenerovaný váš AI obsah" + }, + "block_types": { + "placeholder": "Vybrať typ bloku", + "summarize_page": "Zhrnúť stránku", + "custom_prompt": "Vlastná výzva" + }, + "actions": { + "discard": "Zahodiť", + "generate": "Vygenerovať", + "generating": "Generovanie", + "rewriting": "Prepisovanie", + "rewrite": "Prepísať", + "use_this": "Použiť toto", + "refine": "Upraviť" + } } } diff --git a/packages/i18n/src/locales/sk/empty-state.json b/packages/i18n/src/locales/sk/empty-state.json index f0124d92428..15bc7d2127e 100644 --- a/packages/i18n/src/locales/sk/empty-state.json +++ b/packages/i18n/src/locales/sk/empty-state.json @@ -249,10 +249,22 @@ "title": "Sledujte časové výkazy pre všetkých členov", "description": "Zaznamenávajte čas na pracovných položkách na zobrazenie podrobných časových výkazov pre akéhokoľvek člena tímu naprieč projektmi." }, + "group_syncing": { + "title": "Zatiaľ žiadne mapovania skupín" + }, "template_setting": { "title": "Zatiaľ žiadne šablóny", "description": "Skráťte dobu nastavenia vytváraním šablón pre projekty, pracovné položky a stránky — a začnite novú prácu počas niekoľkých sekúnd.", "cta_primary": "Vytvoriť šablónu" + }, + "workflows": { + "title": "Zatiaľ žiadne pracovné postupy", + "description": "Vytvorte pracovné postupy na riadenie priebehu svojich pracovných položiek.", + "cta_primary": "Pridať nový pracovný postup", + "states": { + "title": "Pridať stavy", + "description": "Vyberte stavy, cez ktoré pracovná položka prechádza." + } } } } diff --git a/packages/i18n/src/locales/sk/integration.json b/packages/i18n/src/locales/sk/integration.json index 6b8b2377f01..79689a4184f 100644 --- a/packages/i18n/src/locales/sk/integration.json +++ b/packages/i18n/src/locales/sk/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Chyba servera pri načítavaní stavov" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Prepojte a synchronizujte svoje repozitáre Bitbucket Data Center s Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Overenie tokenov externých IdP pre prístup k API.", @@ -302,6 +306,7 @@ "generic_error": "Pri spracovaní vašej požiadavky sa vyskytla neočakávaná chyba", "connection_not_found": "Požadované pripojenie nebolo nájdené", "multiple_connections_found": "Bolo nájdených viacero pripojení, keď sa očakávalo iba jedno", + "cannot_create_multiple_connections": "Už ste prepojili svoju organizáciu s pracovným priestorom. Pred pripojením nového prepojenia najprv odpojte existujúce.", "installation_not_found": "Požadovaná inštalácia nebola nájdená", "user_not_found": "Požadovaný používateľ nebol nájdený", "error_fetching_token": "Zlyhalo načítanie autentifikačného tokenu", @@ -315,6 +320,7 @@ "pulling": "Sťahuje sa", "timed_out": "Časový limit vypršal", "pulled": "Stiahnuté", + "progressing": "Prebieha", "transforming": "Transformuje sa", "transformed": "Transformované", "pushing": "Nahrávajú sa", diff --git a/packages/i18n/src/locales/sk/module.json b/packages/i18n/src/locales/sk/module.json index 967fc9b238f..b896af44259 100644 --- a/packages/i18n/src/locales/sk/module.json +++ b/packages/i18n/src/locales/sk/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modul} few {Moduly} other {Modulov}}", - "no_module": "Žiadny modul" + "no_module": "Žiadny modul", + "select": "Pridať moduly" } } diff --git a/packages/i18n/src/locales/sk/navigation.json b/packages/i18n/src/locales/sk/navigation.json index b78a56e7c8a..0d0928664b1 100644 --- a/packages/i18n/src/locales/sk/navigation.json +++ b/packages/i18n/src/locales/sk/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Nenašli sa žiadne výsledky" + } + } + }, "sidebar": { + "stickies": "Poznámky", + "your_work": "Vaša práca", "projects": "Projekty", "pages": "Stránky", "new_work_item": "Nová pracovná položka", "home": "Domov", - "your_work": "Vaša práca", "inbox": "Doručená pošta", "workspace": "Pracovný priestor", "views": "Pohľady", @@ -21,14 +29,6 @@ "epics": "Epiky", "upgrade_plan": "Apgrejd plán", "plane_pro": "Plejn Pro", - "business": "Biznis", - "recurring_work_items": "Opakujúce sa pracovné položky" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Nenašli sa žiadne výsledky" - } - } + "business": "Biznis" } } diff --git a/packages/i18n/src/locales/sk/page.json b/packages/i18n/src/locales/sk/page.json index ad3c6803dce..7b5f029cf9b 100644 --- a/packages/i18n/src/locales/sk/page.json +++ b/packages/i18n/src/locales/sk/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Pripojenie stránok", - "show_wiki_pages": "Zobraziť Wiki stránky", - "link_pages_to": "Pripojenie stránok k", - "linked_pages": "Pripojené stránky", - "no_description": "Táto stránka je prázdna. Napíšte niečo sem a pozrite si, ako sa zobrazí tu ako tento placeholder", - "toasts": { - "link": { - "success": { - "title": "Stránky aktualizované", - "message": "Stránky boli úspešne aktualizované" - }, - "error": { - "title": "Stránky neaktualizované", - "message": "Stránky sa nepodarilo aktualizovať" - } - }, - "remove": { - "success": { - "title": "Stránka odstránená", - "message": "Stránka bola úspešne odstránená" - }, - "error": { - "title": "Stránka neodstránená", - "message": "Stránku sa nepodarilo odstrániť" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Chýbajú obrázky", "description": "Pridajte obrázky, aby sa tu zobrazili." } + }, + "comments": { + "label": "Komentáre", + "empty_state": { + "title": "Žiadne komentáre", + "description": "Pridávajte komentáre, aby ste ich videli tu." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Názov poznámky nemôže mať viac ako 100 znakov.", + "already_exists": "Už existuje poznámka bez popisu" + }, + "created": { + "title": "Poznámka bola vytvorená", + "message": "Poznámka bola úspešne vytvorená" + }, + "not_created": { + "title": "Poznámka nebola vytvorená", + "message": "Poznámku sa nepodarilo vytvoriť" + }, + "updated": { + "title": "Poznámka bola aktualizovaná", + "message": "Poznámka bola úspešne aktualizovaná" + }, + "not_updated": { + "title": "Poznámka nebola aktualizovaná", + "message": "Poznámku sa nepodarilo aktualizovať" + }, + "removed": { + "title": "Poznámka bola odstránená", + "message": "Poznámka bola úspešne odstránená" + }, + "not_removed": { + "title": "Poznámka nebola odstránená", + "message": "Poznámku sa nepodarilo odstrániť" } }, "open_button": "Otvoriť navigačný panel", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Presunúť", + "loading": "Presúvanie" + }, + "cannot_move_to_teamspace": "Súkromné a zdieľané stránky nie je možné presunúť do tímspejsu.", "placeholders": { + "workspace_to_all": "Hľadať projekty a tímspejsy", + "workspace_to_project": "Hľadať projekty", + "project_to_all": "Hľadať projekty a tímspejsy", + "project_to_project": "Hľadať projekty", "project_to_all_with_wiki": "Hľadať wiki kolekcie, projekty a tímové priestory", "project_to_project_with_wiki": "Hľadať wiki kolekcie a projekty" }, "toasts": { + "success": { + "title": "Úspech!", + "message": "Stránka bola úspešne presunutá." + }, + "error": { + "title": "Chyba!", + "message": "Stránku nebolo možné presunúť. Skúste to prosím neskôr." + }, "collection_error": { "title": "Presunuté do wiki", "message": "Stránka bola presunutá do wiki, ale nepodarilo sa ju pridať do vybratej kolekcie. Zostáva v General." diff --git a/packages/i18n/src/locales/sk/project-settings.json b/packages/i18n/src/locales/sk/project-settings.json index 76bb57ba618..18ce0154ae5 100644 --- a/packages/i18n/src/locales/sk/project-settings.json +++ b/packages/i18n/src/locales/sk/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Členovia", "project_lead": "Vedúci projektu", + "project_lead_description": "Vyberte vedúceho projektu.", "default_assignee": "Predvolené priradenie", + "default_assignee_description": "Vyberte predvoleného priradeného pre projekt.", + "project_subscribers": "Odberatelia projektu", + "project_subscribers_description": "Vyberte členov, ktorí budú dostávať upozornenia pre tento projekt.", "guest_super_permissions": { "title": "Udeľovať hosťom prístup ku všetkým položkám:", "sub_heading": "Hostia uvidia všetky položky v projekte." @@ -30,13 +34,11 @@ "title": "Pozvať členov", "sub_heading": "Pozvite členov do projektu.", "select_co_worker": "Vybrať spolupracovníka" - }, - "project_lead_description": "Vyberte vedúceho projektu.", - "default_assignee_description": "Vyberte predvoleného priradeného pre projekt.", - "project_subscribers": "Odberatelia projektu", - "project_subscribers_description": "Vyberte členov, ktorí budú dostávať upozornenia pre tento projekt." + } }, "states": { + "heading": "Stavy", + "description": "Definujte a prispôsobte stavy pracovného postupu na sledovanie priebehu vašich pracovných položiek.", "describe_this_state_for_your_members": "Opíšte tento stav členom.", "empty_state": { "title": "Žiadne stavy pre skupinu {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Štítky", + "description": "Vytvorte vlastné štítky na kategorizáciu a organizáciu pracovných položiek", "label_title": "Názov štítka", "label_title_is_required": "Názov štítka je povinný", "label_max_char": "Názov štítka nesmie presiahnuť 255 znakov", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Odhady", + "description": "Pomáhajú vám komunikovať zložitosť a pracovné zaťaženie tímu.", "label": "Odhady", "title": "Povoliť odhady pre môj projekt", - "description": "Pomáhajú vám komunikovať zložitosť a pracovné zaťaženie tímu.", + "enable_description": "Pomáhajú vám komunikovať zložitosť a vyťaženie tímu.", "no_estimate": "Bez odhadu", "new": "Nový systém odhadov", "create": { @@ -112,6 +118,16 @@ "title": "Preusporiadanie odhadov zlyhalo", "message": "Nepodarilo sa preusporiadať odhady, skúste to prosím znova" } + }, + "switch": { + "success": { + "title": "Systém odhadov bol vytvorený", + "message": "Úspešne vytvorené a povolené" + }, + "error": { + "title": "Chyba", + "message": "Niečo sa pokazilo" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Automatizácie", + "heading": "Automatizácie", + "description": "Nakonfigurujte automatizované akcie na zefektívnenie riadenia projektu a zníženie manuálnej práce.", "auto-archive": { "title": "Automaticky archivovať uzavreté položky", "description": "Plane bude archivovať dokončené alebo zrušené položky.", @@ -194,6 +212,232 @@ "description": "Nakonfigurujte GitHub a ďalšie integrácie na synchronizáciu vašich projektových pracovných položiek." } }, + "workflows": { + "toggle": { + "title": "Povoliť pracovné postupy", + "description": "Nastavte pracovné postupy na riadenie pohybu pracovných položiek", + "no_states_tooltip": "Do pracovného postupu nie sú pridané žiadne stavy.", + "no_work_item_types_tooltip": "Do pracovného postupu nie sú pridané žiadne typy pracovných položiek.", + "no_states_or_work_item_types_tooltip": "Do pracovného postupu nie sú pridané žiadne stavy ani typy pracovných položiek.", + "toast": { + "loading": { + "enabling": "Povoľovanie pracovných postupov", + "disabling": "Zakazovanie pracovných postupov" + }, + "success": { + "title": "Úspech!", + "message": "Pracovné postupy boli úspešne povolené." + }, + "error": { + "title": "Chyba!", + "message": "Povolenie pracovných postupov zlyhalo. Skúste to prosím znova." + } + } + }, + "heading": "Pracovné postupy", + "description": "Automatizujte prechody pracovných položiek a nastavte pravidlá, ktorými sa bude riadiť pohyb úloh vaším projektom.", + "add_button": "Pridať nový pracovný postup", + "search": "Hľadať pracovné postupy", + "detail": { + "define": "Definovať pracovný postup", + "add_states": "Pridať stavy", + "unmapped_states": { + "title": "Zistené nenamapované stavy", + "description": "Niektoré pracovné položky vybraných typov sa aktuálne nachádzajú v stavoch, ktoré v tomto pracovnom postupe neexistujú.", + "note": "Ak tento pracovný postup povolíte, tieto položky sa automaticky presunú do počiatočného stavu tohto pracovného postupu.", + "label": "Chýbajúce stavy", + "tooltip": "Niektoré pracovné položky sú v stavoch, ktoré nie sú namapované na tento pracovný postup. Otvorte pracovný postup a skontrolujte." + } + }, + "select_states": { + "empty_state": { + "title": "Všetky stavy sa už používajú", + "description": "Všetky definované stavy tohto projektu sú už vo vašom aktuálnom pracovnom postupe." + } + }, + "default_footer": { + "fallback_message": "Tento pracovný postup platí pre všetky typy pracovných položiek, ktoré nie sú priradené k pracovnému postupu." + }, + "create": { + "heading": "Vytvoriť nový pracovný postup", + "name": { + "placeholder": "Pridajte jedinečný názov", + "validation": { + "max_length": "Názov musí mať menej ako 255 znakov", + "required": "Názov je povinný", + "invalid": "Názov môže obsahovať len písmená, čísla, medzery, pomlčky a apostrofy" + } + }, + "description": { + "placeholder": "Pridajte krátky popis", + "validation": { + "invalid": "Popis môže obsahovať len písmená, čísla, medzery, pomlčky a apostrofy" + } + }, + "work_item_type": { + "label": "Typ pracovnej položky" + }, + "success": { + "title": "Úspech!", + "message": "Pracovný postup bol úspešne vytvorený." + }, + "error": { + "title": "Chyba!", + "message": "Vytvorenie pracovného postupu zlyhalo. Skúste to prosím znova." + } + }, + "update": { + "success": { + "title": "Úspech!", + "message": "Pracovný postup bol úspešne aktualizovaný." + }, + "error": { + "title": "Chyba!", + "message": "Aktualizácia pracovného postupu zlyhala. Skúste to prosím znova." + } + }, + "delete": { + "loading": "Mazanie pracovného postupu", + "success": { + "title": "Úspech!", + "message": "Pracovný postup bol úspešne odstránený." + }, + "error": { + "title": "Chyba!", + "message": "Odstránenie pracovného postupu zlyhalo. Skúste to prosím znova." + } + }, + "add_states": { + "success": { + "title": "Úspech!", + "message": "Stavy boli úspešne pridané." + }, + "error": { + "title": "Chyba!", + "message": "Pridanie stavov zlyhalo. Skúste to prosím znova." + } + } + }, + "work_item_types": { + "heading": "Typy pracovných položiek", + "description": "Vytvárajte a prispôsobujte rôzne typy pracovných položiek s jedinečnými vlastnosťami" + }, + "features": { + "cycles": { + "title": "Cykly", + "short_title": "Cykly", + "description": "Naplánujte prácu v flexibilných obdobiach, ktoré sa prispôsobia jedinečnému rytmu a tempu tohto projektu.", + "toggle_title": "Povoliť cykly", + "toggle_description": "Naplánujte prácu v sústredenej časovej osi." + }, + "modules": { + "title": "Moduly", + "short_title": "Moduly", + "description": "Organizujte prácu do podprojektov s vyčlenenými vedúcimi a priradenými osobami.", + "toggle_title": "Povoliť moduly", + "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať moduly." + }, + "views": { + "title": "Zobrazenia", + "short_title": "Zobrazenia", + "description": "Uložte vlastné triedenia, filtre a možnosti zobrazenia alebo ich zdieľajte so svojím tímom.", + "toggle_title": "Povoliť zobrazenia", + "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať zobrazenia." + }, + "pages": { + "title": "Stránky", + "short_title": "Stránky", + "description": "Vytvárajte a upravujte voľný obsah: poznámky, dokumenty, čokoľvek.", + "toggle_title": "Povoliť stránky", + "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať stránky." + }, + "intake": { + "intake_responsibility": "Zodpovednosť za príjem", + "intake_sources": "Zdroje príjmu", + "title": "Príjem", + "short_title": "Príjem", + "description": "Umožnite nečlenom zdieľať chyby, spätnú väzbu a návrhy; bez narušenia vášho pracovného postupu.", + "toggle_title": "Povoliť príjem", + "toggle_description": "Povoliť členom projektu vytvárať žiadosti o príjem v aplikácii.", + "toggle_tooltip_on": "Požiadajte správcu projektu, aby toto zapol.", + "toggle_tooltip_off": "Požiadajte správcu projektu, aby toto vypol.", + "notify_assignee": { + "title": "Upozorniť priradených", + "description": "Pre novú žiadosť o príjem budú predvolení priradení upozornení prostredníctvom oznámení" + }, + "in_app": { + "title": "V aplikácii", + "description": "Získajte nové pracovné položky od členov a hostí vo vašom pracovnom priestore bez narušenia existujúcich pracovných položiek." + }, + "email": { + "title": "E-mail", + "description": "Zhromažďujte nové pracovné položky od každého, kto pošle e-mail na Plane e-mailovú adresu.", + "fieldName": "ID e-mailu" + }, + "form": { + "title": "Formuláre", + "description": "Umožnite ľuďom mimo pracovného priestoru vytvárať pre vás potenciálne nové pracovné položky prostredníctvom vyhradeného a bezpečného formulára.", + "fieldName": "Predvolená URL formulára", + "create_forms": "Vytvárať formuláre pomocou typov pracovných položiek", + "manage_forms": "Spravovať formuláre", + "manage_forms_tooltip": "Požiadajte správcu pracovného priestoru, aby toto spravoval.", + "create_form": "Vytvoriť formulár", + "edit_form": "Upraviť detaily formulára", + "form_title": "Názov formulára", + "form_title_required": "Názov formulára je povinný", + "work_item_type": "Typ pracovnej položky", + "remove_property": "Odstrániť vlastnosť", + "select_properties": "Vybrať vlastnosti", + "search_placeholder": "Hľadať vlastnosti", + "toasts": { + "success_create": "Formulár príjmu bol úspešne vytvorený", + "success_update": "Formulár príjmu bol úspešne aktualizovaný", + "error_create": "Vytvorenie formulára príjmu zlyhalo", + "error_update": "Aktualizácia formulára príjmu zlyhala" + } + }, + "toasts": { + "set": { + "loading": "Nastavovanie priradených...", + "success": { + "title": "Úspech!", + "message": "Priradení úspešne nastavení." + }, + "error": { + "title": "Chyba!", + "message": "Pri nastavovaní priradených sa niečo pokazilo. Skúste to prosím znova." + } + } + } + }, + "time_tracking": { + "title": "Sledovanie času", + "short_title": "Sledovanie času", + "description": "Zaznamenávajte čas strávený na pracovných položkách a projektoch.", + "toggle_title": "Povoliť sledovanie času", + "toggle_description": "Členovia projektu budú môcť zaznamenávať odpracovaný čas." + }, + "milestones": { + "title": "Míľniky", + "short_title": "Míľniky", + "description": "Míľniky poskytujú vrstvu na zladenie pracovných položiek smerom k spoločným termínom dokončenia.", + "toggle_title": "Povoliť míľniky", + "toggle_description": "Organizujte pracovné položky podľa termínov míľnikov." + }, + "toasts": { + "loading": "Aktualizácia funkcie projektu...", + "success": "Funkcia projektu bola úspešne aktualizovaná.", + "error": "Pri aktualizácii funkcie projektu sa niečo pokazilo. Skúste to prosím znova." + } + }, + "project_updates": { + "heading": "Aktualizácie projektu", + "description": "Konsolidované sledovanie a monitorovanie priebehu pre tento projekt" + }, + "templates": { + "heading": "Šablóny", + "description": "Ušetrite 80 % času stráveného vytváraním projektov, pracovných položiek a stránok pomocou šablón." + }, "cycles": { "auto_schedule": { "heading": "Automatické plánovanie cyklov", @@ -277,75 +521,6 @@ } } } - }, - "features": { - "cycles": { - "title": "Cykly", - "short_title": "Cykly", - "description": "Naplánujte prácu v flexibilných obdobiach, ktoré sa prispôsobia jedinečnému rytmu a tempu tohto projektu.", - "toggle_title": "Povoliť cykly", - "toggle_description": "Naplánujte prácu v sústredenej časovej osi." - }, - "modules": { - "title": "Moduly", - "short_title": "Moduly", - "description": "Organizujte prácu do podprojektov s vyčlenenými vedúcimi a priradenými osobami.", - "toggle_title": "Povoliť moduly", - "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať moduly." - }, - "views": { - "title": "Zobrazenia", - "short_title": "Zobrazenia", - "description": "Uložte vlastné triedenia, filtre a možnosti zobrazenia alebo ich zdieľajte so svojím tímom.", - "toggle_title": "Povoliť zobrazenia", - "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať zobrazenia." - }, - "pages": { - "title": "Stránky", - "short_title": "Stránky", - "description": "Vytvárajte a upravujte voľný obsah: poznámky, dokumenty, čokoľvek.", - "toggle_title": "Povoliť stránky", - "toggle_description": "Členovia projektu budú môcť vytvárať a upravovať stránky." - }, - "intake": { - "heading": "Zodpovednosť za príjem", - "title": "Príjem", - "short_title": "Príjem", - "description": "Umožnite nečlenom zdieľať chyby, spätnú väzbu a návrhy; bez narušenia vášho pracovného postupu.", - "toggle_title": "Povoliť príjem", - "toggle_description": "Povoliť členom projektu vytvárať žiadosti o príjem v aplikácii.", - "notify_assignee": { - "title": "Upozorniť priradených", - "description": "Pre novú žiadosť o príjem budú predvolení priradení upozornení prostredníctvom oznámení" - }, - "toasts": { - "set": { - "loading": "Nastavovanie priradených...", - "success": { - "title": "Úspech!", - "message": "Priradení úspešne nastavení." - }, - "error": { - "title": "Chyba!", - "message": "Pri nastavovaní priradených sa niečo pokazilo. Skúste to prosím znova." - } - } - } - }, - "time_tracking": { - "title": "Sledovanie času", - "short_title": "Sledovanie času", - "description": "Zaznamenávajte čas strávený na pracovných položkách a projektoch.", - "toggle_title": "Povoliť sledovanie času", - "toggle_description": "Členovia projektu budú môcť zaznamenávať odpracovaný čas." - }, - "milestones": { - "title": "Míľniky", - "short_title": "Míľniky", - "description": "Míľniky poskytujú vrstvu na zladenie pracovných položiek smerom k spoločným termínom dokončenia.", - "toggle_title": "Povoliť míľniky", - "toggle_description": "Organizujte pracovné položky podľa termínov míľnikov." - } } } } diff --git a/packages/i18n/src/locales/sk/project.json b/packages/i18n/src/locales/sk/project.json index 199c7ba7477..7a4e6ee571d 100644 --- a/packages/i18n/src/locales/sk/project.json +++ b/packages/i18n/src/locales/sk/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Ukladajte filtre ako pohľady.", + "description": "Pohľady sú uložené filtre na jednoduchý prístup. Zdieľajte ich v tíme.", + "primary_button": { + "text": "Vytvoriť prvý pohľad", + "comic": { + "title": "Pohľady pracujú s vlastnosťami položiek.", + "description": "Vytvorte pohľad s požadovanými filtrami." + } + }, + "filter": { + "title": "Žiadne zodpovedajúce pohľady", + "description": "Žiadne pohľady nezodpovedajú kritériám vyhľadávania.\n Vytvorte namiesto toho nový pohľad." + } + }, + "no_archived_issues": { + "title": "Zatiaľ žiadne archivované pracovné položky", + "description": "Manuálne alebo pomocou automatizácie môžete archivovať pracovné položky, ktoré sú dokončené alebo zrušené. Po archivácii ich nájdete tu.", + "primary_button": { + "text": "Nastaviť automatizáciu" + } + }, + "issues_empty_filter": { + "title": "Nenašli sa žiadne pracovné položky zodpovedajúce použitým filtrom", + "secondary_button": { + "text": "Zrušiť všetky filtre" + } + }, + "public": { + "title": "Zatiaľ žiadne verejné stránky", + "description": "Stránky zdieľané so všetkými vo vašom projekte uvidíte tu.", + "primary_button": { + "text": "Vytvorte svoju prvú stránku" + } + }, + "archived": { + "title": "Zatiaľ žiadne archivované stránky", + "description": "Archivujte stránky, ktoré nepotrebujete. Prístup k nim máte tu, keď ich budete potrebovať." + }, + "shared": { + "title": "Zatiaľ žiadne zdieľané stránky", + "description": "Stránky, ktoré s vami zdieľali iní, sa zobrazia tu." + } + }, + "delete_view": { + "title": "Ste si istí, že chcete vymazať toto zobrazenie?", + "content": "Ak potvrdíte, všetky možnosti triedenia, filtrovania a zobrazenia + rozloženie, ktoré ste vybrali pre toto zobrazenie, budú natrvalo vymazané bez možnosti obnovenia." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Ukladajte filtre ako pohľady.", - "description": "Pohľady sú uložené filtre na jednoduchý prístup. Zdieľajte ich v tíme.", - "primary_button": { - "text": "Vytvoriť prvý pohľad", - "comic": { - "title": "Pohľady pracujú s vlastnosťami položiek.", - "description": "Vytvorte pohľad s požadovanými filtrami." - } - } - }, - "filter": { - "title": "Žiadne zodpovedajúce zobrazenia", - "description": "Vytvorte nové zobrazenie." - } - }, - "delete_view": { - "title": "Ste si istí, že chcete vymazať toto zobrazenie?", - "content": "Ak potvrdíte, všetky možnosti triedenia, filtrovania a zobrazenia + rozloženie, ktoré ste vybrali pre toto zobrazenie, budú natrvalo vymazané bez možnosti obnovenia." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Manuálne" } }, + "project_members": { + "full_name": "Celé meno", + "display_name": "Zobrazované meno", + "email": "E-mail", + "joining_date": "Dátum pripojenia", + "role": "Rola" + }, "project": { "members_import": { "title": "Importovať členov z CSV", diff --git a/packages/i18n/src/locales/sk/settings.json b/packages/i18n/src/locales/sk/settings.json index f5d054b0004..1ef5c133e01 100644 --- a/packages/i18n/src/locales/sk/settings.json +++ b/packages/i18n/src/locales/sk/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Predvoľby", + "description": "Prispôsobte si aplikáciu spôsobu, akým pracujete" + }, "notifications": { + "heading": "E-mailové oznámenia", + "description": "Majte prehľad o pracovných položkách, ktoré odoberáte. Aktivujte toto pre zasielanie oznámení.", "select_default_view": "Vybrať predvolené zobrazenie", "compact": "Kompaktné", "full": "Celá obrazovka" + }, + "security": { + "heading": "Zabezpečenie" + }, + "api_tokens": { + "title": "Osobné prístupové tokeny", + "description": "Generujte bezpečné API tokeny na integráciu vašich údajov s externými systémami a aplikáciami." + }, + "activity": { + "heading": "Aktivita", + "description": "Sledujte svoje nedávne akcie a zmeny naprieč všetkými projektmi a pracovnými položkami." + }, + "connections": { + "title": "Prepojenia", + "heading": "Prepojenia", + "description": "Spravujte nastavenia prepojení svojho pracovného priestoru." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Zabezpečenie", "activity": "Aktivita", - "appearance": "Vzhľad", + "preferences": "Predvoľby", "notifications": "Oznámenia", + "api-tokens": "Osobné prístupové tokeny", "connections": "Pripojenia" }, "tabs": { diff --git a/packages/i18n/src/locales/sk/template.json b/packages/i18n/src/locales/sk/template.json index ccc1d794521..9d42a686435 100644 --- a/packages/i18n/src/locales/sk/template.json +++ b/packages/i18n/src/locales/sk/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Šablóny", "description": "Ušetríte 80% času stráveného vytváraním projektov, pracovných položiek a stránok, keď použijete šablóny.", + "new_project_template": "Nová šablóna projektu", + "new_work_item_template": "Nová šablóna pracovnej položky", + "new_page_template": "Nová šablóna stránky", "options": { "project": { "label": "Šablóny projektov" @@ -157,6 +160,14 @@ "required": "Aspoň jedno kľúčové slovo je povinné" } }, + "website": { + "label": "URL webovej stránky", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Neplatná URL", + "maxLength": "URL musí mať menej ako 800 znakov" + } + }, "company_name": { "label": "Názov spoločnosti", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Neplatná emailová adresa", - "required": "Email podpory je povinný", "maxLength": "Email podpory by nemal presiahnuť 255 znakov" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": "Žiadne štítky ešte neexistujú. Vytvorte štítky na pomoc organizácii a filtrovaniu pracovných položiek v projekte." }, + "no_modules": { + "description": "Zatiaľ žiadne moduly. Zorganizujte prácu do podprojektov s vyhradenými vedúcimi a priradenými." + }, "no_work_items": { "description": "Ešte nemáte pracovné položky. Pridajte jednu, aby ste lepšie struktúrovali svoju prácu." }, diff --git a/packages/i18n/src/locales/sk/tour.json b/packages/i18n/src/locales/sk/tour.json index ff8eb80ac42..f5f6c66f3f7 100644 --- a/packages/i18n/src/locales/sk/tour.json +++ b/packages/i18n/src/locales/sk/tour.json @@ -110,6 +110,12 @@ "description": "Pracovná položka môže byť odložená na preskúmanie neskôr. Presunie sa na koniec vášho zoznamu otvorených žiadostí." } }, + "mcp_connectors": { + "step_zero": { + "title": "Prestaňte prepínať medzi kartami. Prepojte svoj svet.", + "description": "Prepojte GitHub a Slack, aby ste mohli sledovať PR a sumarizovať chaty priamo v Plane AI." + } + }, "navigation": { "modal": { "title": "Navigácia, znovu premyslená", diff --git a/packages/i18n/src/locales/sk/update.json b/packages/i18n/src/locales/sk/update.json index 359b4ec5436..ea9d927e3cd 100644 --- a/packages/i18n/src/locales/sk/update.json +++ b/packages/i18n/src/locales/sk/update.json @@ -1,33 +1,16 @@ { "updates": { + "progress": { + "title": "Postup", + "since_last_update": "Od poslednej aktualizácie", + "comments": "{count, plural, one{# komentár} few{# komentáre} other{# komentárov}}" + }, "add_update": "Pridať aktualizáciu", "add_update_placeholder": "Vložte vašu aktualizáciu tu", "empty": { "title": "Ešte nie sú žiadne aktualizácie", "description": "Tu môžete zobraziť aktualizácie." }, - "delete": { - "title": "Odstrániť aktualizáciu", - "confirmation": "Naozaj chcete odstrániť túto aktualizáciu? Táto akcia je neobnoviteľná.", - "success": { - "title": "Aktualizácia odstránená", - "message": "Aktualizácia bola úspešne odstránená." - }, - "error": { - "title": "Aktualizáciu sa nepodarilo odstrániť", - "message": "Aktualizáciu sa nepodarilo odstrániť." - } - }, - "update": { - "success": { - "title": "Aktualizácia aktualizovaná", - "message": "Aktualizácia bola úspešne aktualizovaná." - }, - "error": { - "title": "Aktualizáciu sa nepodarilo aktualizovať", - "message": "Aktualizáciu sa nepodarilo aktualizovať." - } - }, "reaction": { "create": { "success": { @@ -50,11 +33,6 @@ } } }, - "progress": { - "title": "Postup", - "since_last_update": "Od poslednej aktualizácie", - "comments": "{count, plural, one{# komentár} few{# komentáre} other{# komentárov}}" - }, "create": { "success": { "title": "Aktualizácia vytvorená", @@ -64,6 +42,28 @@ "title": "Aktualizáciu sa nepodarilo vytvoriť", "message": "Aktualizáciu sa nepodarilo vytvoriť." } + }, + "delete": { + "title": "Odstrániť aktualizáciu", + "confirmation": "Naozaj chcete odstrániť túto aktualizáciu? Táto akcia je neobnoviteľná.", + "success": { + "title": "Aktualizácia odstránená", + "message": "Aktualizácia bola úspešne odstránená." + }, + "error": { + "title": "Aktualizáciu sa nepodarilo odstrániť", + "message": "Aktualizáciu sa nepodarilo odstrániť." + } + }, + "update": { + "success": { + "title": "Aktualizácia aktualizovaná", + "message": "Aktualizácia bola úspešne aktualizovaná." + }, + "error": { + "title": "Aktualizáciu sa nepodarilo aktualizovať", + "message": "Aktualizáciu sa nepodarilo aktualizovať." + } } } } diff --git a/packages/i18n/src/locales/sk/wiki.json b/packages/i18n/src/locales/sk/wiki.json index 7b8f40391f0..8ccbc28e514 100644 --- a/packages/i18n/src/locales/sk/wiki.json +++ b/packages/i18n/src/locales/sk/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Stránku sa nepodarilo vytvoriť alebo pridať do kolekcie. Skúste to prosím znova.", "collection_link_copied": "Odkaz na kolekciu bol skopírovaný do schránky." } + }, + "wiki": { + "upgrade_flow": { + "title": "Upgradujte a odomknite Wiki", + "description": "Odomknite verejné stránky, históriu verzií, zdieľané stránky, spoluprácu v reálnom čase a stránky pracovného priestoru pre wiki, firemnú dokumentáciu a databázy znalostí s Plane Pro.", + "upgrade_button": { + "text": "Upgradovať" + }, + "learn_more_button": { + "text": "Zistiť viac" + }, + "download_button": { + "text": "Stiahnuť údaje", + "loading": "Sťahovanie" + }, + "tabs": { + "nested_pages": "Vnorené stránky", + "add_embeds": "Pridať vložené prvky", + "publish_pages": "Publikovať stránky", + "comments": "Komentáre" + } + }, + "nested_pages_download_banner": { + "title": "Vnorené stránky vyžadujú platený plán. Upgradujte a odomknite ich." + } } } diff --git a/packages/i18n/src/locales/sk/work-item-type.json b/packages/i18n/src/locales/sk/work-item-type.json index 788e17dc135..c41385fe2c9 100644 --- a/packages/i18n/src/locales/sk/work-item-type.json +++ b/packages/i18n/src/locales/sk/work-item-type.json @@ -3,11 +3,25 @@ "label": "Typy pracovných položiek", "label_lowercase": "typy pracovných položiek", "settings": { - "title": "Typy pracovných položiek", + "description": "Prispôsobte a pridajte si vlastné vlastnosti, aby zodpovedali potrebám vášho tímu.", + "cant_delete_default_message": "Tento typ pracovnej položky nie je možné odstrániť, pretože je nastavený ako predvolený pre tento projekt.", + "set_as_default": "Nastaviť ako predvolený", + "cant_set_default_inactive_message": "Pred nastavením ako predvolený tento typ aktivujte", + "set_default_confirmation": { + "title": "Nastaviť ako predvolený typ pracovnej položky", + "description": "Nastavením {name} ako predvoleného sa tento typ importuje do všetkých projektov v tomto pracovnom priestore. Všetky nové pracovné položky budú štandardne používať tento typ.", + "confirm_button": "Nastaviť ako predvolený" + }, "properties": { "title": "Vlastné vlastnosti", + "description": "Vytvárajte a prispôsobujte vlastnosti.", "tooltip": "Každý typ pracovnej položky je dodávaný s predvolenou sadou vlastností ako Názov, Popis, Priradený používateľ, Stav, Priorita, Dátum začiatku, Termín dokončenia, Modul, Cyklus atď. Môžete si tiež prispôsobiť a pridať vlastné vlastnosti, aby vyhovovali potrebám vášho tímu.", "add_button": "Pridať novú vlastnosť", + "project": { + "add_button": { + "import_from_workspace": "Importovať z pracovného priestoru" + } + }, "dropdown": { "label": "Typ vlastnosti", "placeholder": "Vyberte typ" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Vytvoriť novú vlastnú vlastnosť", + "update": "Aktualizovať vlastnú vlastnosť" + }, "form": { "display_name": { "placeholder": "Názov" @@ -213,9 +231,50 @@ "description": "Nové vlastnosti, ktoré pridáte pre tento typ pracovnej položky, sa zobrazia tu." } }, + "types": { + "title": "Typy", + "description": "Vytvárajte a prispôsobujte typy pracovných položiek s vlastnosťami.", + "sort_options": { + "project_count": "Počet projektov, v ktorých je súčasťou" + }, + "filter_options": { + "show_active": "Zobraziť aktívne", + "show_inactive": "Zobraziť neaktívne" + }, + "project": { + "add_button": { + "create_new": "Vytvoriť nový", + "import_from_workspace": "Importovať z pracovného priestoru" + }, + "banner": { + "with_access": "Povoľte typy pracovných položiek, aby bolo možné importovať typy z úrovne pracovného priestoru", + "without_access": "Typy pracovných položiek sú zakázané. Kontaktujte správcu pracovného priestoru, aby ich povolil v nastaveniach pracovného priestoru." + } + } + }, + "linked_properties": { + "title": "Vlastné vlastnosti", + "add_button": "Pridať vlastnosti", + "modal": { + "title": "Pridať vlastnosti", + "empty": { + "title": "Žiadne dostupné vlastnosti", + "description": "Všetky vlastnosti sú už prepojené s týmto typom." + } + }, + "unlink_confirmation": { + "title": "Odpojiť vlastnosť", + "description": "Odpojením tejto vlastnosti sa natrvalo odstránia všetky jej hodnoty vo všetkých pracovných položkách používajúcich tento typ. Túto akciu nie je možné vrátiť späť.", + "input_label": "Napíšte", + "input_label_suffix": "pre pokračovanie:", + "confirm": "Odpojiť vlastnosť", + "loading": "Odpájanie" + } + }, "item_delete_confirmation": { "title": "Odstrániť tento typ", "description": "Odstránenie typov môže viesť k strate existujúcich údajov.", + "can_disable_warning": "Chcete namiesto toho zakázať tento typ?", "primary_button": "Áno, odstrániť", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Predvolený typ pracovnej položky nie je možné odstrániť", "cannot_delete_work_item_type_with_associated_work_items": "Typ pracovnej položky s priradenými pracovnými položkami nie je možné odstrániť" - }, - "can_disable_warning": "Chcete namiesto toho zakázať tento typ?" - }, - "cant_delete_default_message": "Tento typ pracovnej položky nie je možné odstrániť, pretože je nastavený ako predvolený pre tento projekt.", - "set_as_default": "Nastaviť ako predvolený", - "cant_set_default_inactive_message": "Pred nastavením ako predvolený tento typ aktivujte", - "set_default_confirmation": { - "title": "Nastaviť ako predvolený typ pracovnej položky", - "description": "Nastavením {name} ako predvoleného sa tento typ importuje do všetkých projektov v tomto pracovnom priestore. Všetky nové pracovné položky budú štandardne používať tento typ.", - "confirm_button": "Nastaviť ako predvolený" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Chyba!", "message": { + "default": "Vytvorenie typu pracovnej položky zlyhalo. Skúste to prosím znova!", "conflict": "Typ {name} už existuje. Zvoľte iný názov." } } @@ -269,6 +320,7 @@ "error": { "title": "Chyba!", "message": { + "default": "Aktualizácia typu pracovnej položky zlyhala. Skúste to prosím znova!", "conflict": "Typ {name} už existuje. Zvoľte iný názov." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Chyba overenia!", + "title": "Uloženie zruší existujúce väzby", "content": { "intro": "Typ pracovnej položky {workItemTypeName} obsahuje:", - "parent_items": "{count, plural, one {nadradenú pracovnú položku} few {nadradené pracovné položky} other {nadradených pracovných položiek}}", + "parent_items": "{count, plural, one {Bude odstránené # nadradené prepojenie} few {Budú odstránené # nadradené prepojenia} other {Bude odstránených # nadradených prepojení}}.", "child_items": "{count, plural, one {podradenú pracovnú položku} few {podradené pracovné položky} other {podradených pracovných položiek}}", "parent_line_suffix_when_also_children": ", a ", "footer": "Táto zmena odstráni nadradené a podradené vzťahy u existujúcich pracovných položiek typu {workItemTypeName}." }, "confirm_input": { - "label": "Pre pokračovanie napíšte „Potvrdiť“.", - "placeholder": "Potvrdiť" + "label": "Pre pokračovanie napíšte „potvrdiť“.", + "placeholder": "potvrdiť" }, "error_toast": { "title": "Chyba!", - "message": "Nepodarilo sa prerušiť hierarchiu. Skúste to prosím znovu." + "message": "Nepodarilo sa odpojiť prepojenia a uložiť. Skúste to prosím znova." }, "confirm_button": { - "loading": "Aplikovanie", - "default": "Použiť a odpojiť" + "loading": "Ukladanie", + "default": "Uložiť napriek tomu" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/sk/work-item.json b/packages/i18n/src/locales/sk/work-item.json index f91194abddf..f015c780f38 100644 --- a/packages/i18n/src/locales/sk/work-item.json +++ b/packages/i18n/src/locales/sk/work-item.json @@ -20,6 +20,7 @@ "due_date": "Pridať termín", "parent": "Pridať nadradenú pracovnú položku", "sub_issue": "Pridať podriadenú pracovnú položku", + "dependency": "Pridať závislosť", "relation": "Pridať vzťah", "link": "Pridať odkaz", "existing": "Pridať existujúcu pracovnú položku" @@ -110,6 +111,43 @@ "copy_link": { "success": "Odkaz na komentár bol skopírovaný do schránky", "error": "Chyba pri kopírovaní odkazu na komentár. Skúste to prosím neskôr." + }, + "replies": { + "create": { + "submit_button": "Pridať odpoveď", + "placeholder": "Pridať odpoveď" + }, + "toast": { + "fetch": { + "error": { + "message": "Načítanie odpovedí zlyhalo" + } + }, + "create": { + "success": { + "message": "Odpoveď bola úspešne vytvorená" + }, + "error": { + "message": "Vytvorenie odpovede zlyhalo" + } + }, + "update": { + "success": { + "message": "Odpoveď bola úspešne aktualizovaná" + }, + "error": { + "message": "Aktualizácia odpovede zlyhala" + } + }, + "delete": { + "success": { + "message": "Odpoveď bola úspešne odstránená" + }, + "error": { + "message": "Odstránenie odpovede zlyhalo" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Zrušiť výber všetkého" }, "open_in_full_screen": "Otvoriť pracovnú položku na celú obrazovku", + "duplicate": { + "modal": { + "title": "Vytvoriť kópiu do iného projektu", + "description1": "Toto vytvorí kópiu pracovnej položky.", + "description2": "Pri duplikovaní budú odstránené všetky údaje vlastností.", + "placeholder": "Vybrať projekt" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Pracovná položka bola úspešne duplikovaná" + }, + "error": { + "message": "Duplikovanie pracovnej položky zlyhalo" + } + } + }, + "pages": { + "link_pages": "Prepojiť stránky", + "show_wiki_pages": "Zobraziť wiki stránky", + "link_pages_to": "Prepojiť stránky s", + "linked_pages": "Prepojené stránky", + "no_description": "Toto je prázdna stránka. Prečo nenapíšete dovnútra niečo a neuvidíte to zobrazené ako tento zástupný text", + "toasts": { + "link": { + "success": { + "title": "Stránky boli aktualizované", + "message": "Stránky boli úspešne aktualizované" + }, + "error": { + "title": "Aktualizácia stránok zlyhala", + "message": "Aktualizácia stránok zlyhala" + } + }, + "remove": { + "success": { + "title": "Stránka bola odstránená", + "message": "Stránka bola úspešne odstránená" + }, + "error": { + "title": "Odstránenie stránky zlyhalo", + "message": "Odstránenie stránky zlyhalo" + } + } + } + }, "vote": { "click_to_upvote": "Kliknite pre hlasovanie hore", "click_to_downvote": "Kliknite pre hlasovanie dole", @@ -241,54 +326,6 @@ "title": "Nemožno aktualizovať pracovné položky", "message": "Zmena stavu nie je povolená pre niektoré pracovné položky. Uistite sa, že zmena stavu je povolená." } - }, - "workflows": { - "toggle": { - "title": "Povoliť pracovné postupy", - "description": "Nastavte pracovné postupy na riadenie pohybu pracovných položiek", - "no_states_tooltip": "Do pracovného postupu neboli pridané žiadne stavy.", - "toast": { - "loading": { - "enabling": "Povoľovanie pracovných postupov", - "disabling": "Vypínanie pracovných postupov" - }, - "success": { - "title": "Úspech!", - "message": "Pracovné postupy boli úspešne povolené." - }, - "error": { - "title": "Chyba!", - "message": "Pracovné postupy sa nepodarilo povoliť. Skúste to znova." - } - } - }, - "heading": "Pracovné postupy", - "description": "Automatizujte prechody pracovných položiek a nastavte pravidlá, ktoré riadia, ako sa úlohy pohybujú cez tok projektu.", - "add_button": "Pridať nový pracovný postup", - "search": "Hľadať pracovné postupy", - "detail": { - "define": "Definovať pracovný postup", - "add_states": "Pridať stavy", - "unmapped_states": { - "title": "Zistené nenamapované stavy", - "description": "Niektoré pracovné položky vybraných typov sa momentálne nachádzajú v stavoch, ktoré v tomto pracovnom postupe neexistujú.", - "note": "Ak povolíte tento pracovný postup, tieto položky sa automaticky presunú do počiatočného stavu tohto pracovného postupu.", - "label": "Chýbajúce stavy", - "tooltip": "Niektoré pracovné položky sú v stavoch, ktoré nie sú namapované na tento pracovný postup. Otvorte pracovný postup a skontrolujte ho." - } - }, - "select_states": { - "empty_state": { - "title": "Všetky stavy sa používajú", - "description": "Všetky stavy definované pre tento projekt sú už prítomné vo vašom aktuálnom pracovnom postupe." - } - }, - "default_footer": { - "fallback_message": "Tento pracovný postup sa vzťahuje na každý typ pracovnej položky, ktorý nie je priradený k žiadnemu pracovnému postupu." - }, - "create": { - "heading": "Vytvoriť nový pracovný postup" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/sk/workspace-settings.json b/packages/i18n/src/locales/sk/workspace-settings.json index 53e798946c6..d2ed5bfedc6 100644 --- a/packages/i18n/src/locales/sk/workspace-settings.json +++ b/packages/i18n/src/locales/sk/workspace-settings.json @@ -34,7 +34,8 @@ "max_length": "Názov priestoru nesmie presiahnuť 80 znakov" }, "company_size": { - "required": "Veľkosť spoločnosti je povinná" + "required": "Veľkosť spoločnosti je povinná", + "select_a_range": "Vyberte veľkosť organizácie" } } }, @@ -65,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Fakturácia a plány", + "description": "Vyberte si plán, spravujte predplatné a jednoducho upgradujte podľa vašich potrieb.", "title": "Fakturácia a plány", "current_plan": "Aktuálny plán", "free_plan": "Používate bezplatný plán", "view_plans": "Zobraziť plány" }, "exports": { + "heading": "Exporty", + "description": "Exportujte údaje o projektoch v rôznych formátoch a získajte prístup k histórii exportov s odkazmi na stiahnutie.", "title": "Exporty", "exporting": "Exportovanie", "previous_exports": "Predchádzajúce exporty", "export_separate_files": "Exportovať dáta do samostatných súborov", + "exporting_projects": "Exportovanie projektu", + "format": "Formát", "filters_info": "Použite filtre na export konkrétnych pracovných položiek podľa vašich kritérií.", "modal": { "title": "Exportovať do", @@ -91,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooky", + "description": "Automatizujte oznámenia do externých služieb pri udalostiach v projekte.", "title": "Webhooky", "add_webhook": "Pridať webhook", "modal": { @@ -165,14 +174,20 @@ }, "integrations": { "title": "Integrácie", + "heading": "Integrácie", + "description": "Prepojte sa s populárnymi nástrojmi a službami a synchronizujte svoju prácu v rámci celého ekosystému pracovného postupu.", "page_title": "Pracujte so svojimi údajmi Plane v dostupných aplikáciách alebo vo vlastných.", "page_description": "Zobraziť všetky integrácie používané týmto pracovným priestorom alebo vami." }, "imports": { - "title": "Importy" + "title": "Importy", + "heading": "Importy", + "description": "Pripojte a importujte údaje z existujúcich nástrojov na riadenie projektov a zefektívnite integráciu svojho pracovného postupu." }, "worklogs": { - "title": "Pracovné záznamy" + "title": "Pracovné záznamy", + "heading": "Záznamy práce", + "description": "Stiahnite si záznamy práce (timesheety) pre kohokoľvek v akomkoľvek projekte." }, "group_syncing": { "title": "Synchronizácia skupín", @@ -241,7 +256,10 @@ "description": "Nakonfigurujte svoju doménu a povolte jednotné prihlásenie" }, "project_states": { - "title": "Stavy projektu" + "title": "Stavy projektu", + "heading": "Zobrazte prehľad priebehu všetkých projektov.", + "description": "Stavy projektov sú funkcia exkluzívna pre Plane na sledovanie priebehu všetkých vašich projektov podľa ľubovoľnej vlastnosti projektu.", + "go_to_settings": "Prejsť na nastavenia" }, "projects": { "title": "Projekty", @@ -251,6 +269,16 @@ "labels": "Štítky projektu" } }, + "templates": { + "title": "Šablóny", + "heading": "Šablóny", + "description": "Ušetrite 80 % času stráveného vytváraním projektov, pracovných položiek a stránok pomocou šablón." + }, + "relations": { + "title": "Vzťahy", + "heading": "Vzťahy", + "description": "Vytvárajte a spravujte typy vzťahov, ktoré prepájajú pracovné položky naprieč vaším pracovným priestorom." + }, "cancel_trial": { "title": "Najprv zrušte vašu skúšobnú verziu.", "description": "Máte aktívnu skúšobnú verziu jedného z našich platených plánov. Prosím, najskôr ju zrušte, aby ste mohli pokračovať.", @@ -262,6 +290,7 @@ "cancel_error_message": "Skúste to znova, prosím." }, "applications": { + "internal": "Interný", "title": "Aplikácie", "applicationId_copied": "ID aplikácie skopírované do schránky", "clientId_copied": "ID klienta skopírované do schránky", @@ -270,10 +299,61 @@ "your_apps": "Vaše aplikácie", "connect": "Pripojiť", "connected": "Pripojené", + "disconnect": "Odpojiť", "install": "Nainštalovať", "installed": "Nainštalované", "configure": "Konfigurovať", "app_available": "Túto aplikáciu ste sprístupnili na použitie s pracovným priestorom Plane", + "app_credentials_regenrated": { + "title": "Prihlasovacie údaje aplikácie boli úspešne znovu vygenerované", + "description": "Nahraďte klientsky kľúč všade, kde sa používa. Predchádzajúci kľúč už nie je platný." + }, + "app_created": { + "title": "Aplikácia bola úspešne vytvorená", + "description": "Použite prihlasovacie údaje na inštaláciu aplikácie do pracovného priestoru Plane" + }, + "installed_apps": "Nainštalované aplikácie", + "all_apps": "Všetky aplikácie", + "internal_apps": "Interné aplikácie", + "app_name_title": "Ako pomenujete túto aplikáciu", + "app_description_title": { + "label": "Dlhý popis", + "placeholder": "Napíšte dlhý popis pre trhovisko. Stlačte '/' pre príkazy." + }, + "authorization_grant_type": { + "title": "Typ pripojenia", + "description": "Vyberte, či má byť vaša aplikácia nainštalovaná raz pre pracovný priestor alebo umožniť každému používateľovi pripojiť svoj vlastný účet" + }, + "website": { + "title": "Webová stránka", + "description": "Odkaz na webovú stránku vašej aplikácie.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Tvorca aplikácií", + "description": "Osoba alebo organizácia, ktorá vytvára aplikáciu." + }, + "app_maker_error": "Tvorca aplikácie je povinný", + "setup_url": { + "label": "URL nastavenia", + "description": "Používatelia budú po nainštalovaní aplikácie presmerovaní na túto URL.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL", + "description": "Tu budeme posielať udalosti webhook a aktualizácie z pracovných priestorov, kde je vaša aplikácia nainštalovaná.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhook Secret", + "description": "Tajný kľúč používaný na overenie prichádzajúcich webhook požiadaviek.", + "placeholder": "Zadajte náhodný tajný kľúč" + }, + "redirect_uris": { + "label": "Presmerovacie URI (oddelené medzerou)", + "description": "Používatelia budú po autentifikácii pomocou Plane presmerovaní na túto cestu.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Pripojte pracovný priestor Plane pre začatie používania", "client_id_and_secret": "ID a Tajomstvo Klienta", "client_id_and_secret_description": "Skopírujte a uložte tento tajný kľúč. Po kliknutí na Zavrieť tento kľúč už neuvidíte.", @@ -285,23 +365,13 @@ "slug_already_exists": "Slug už existuje", "failed_to_create_application": "Nepodarilo sa vytvoriť aplikáciu", "upload_logo": "Nahrať Logo", - "app_name_title": "Ako pomenujete túto aplikáciu", "app_name_error": "Názov aplikácie je povinný", "app_short_description_title": "Dajte tejto aplikácii krátky popis", "app_short_description_error": "Krátky popis aplikácie je povinný", - "app_description_title": { - "label": "Dlhý popis", - "placeholder": "Napíšte dlhý popis pre trhovisko. Stlačte '/' pre príkazy." - }, - "authorization_grant_type": { - "title": "Typ pripojenia", - "description": "Vyberte, či má byť vaša aplikácia nainštalovaná raz pre pracovný priestor alebo umožniť každému používateľovi pripojiť svoj vlastný účet" - }, "app_description_error": "Popis aplikácie je povinný", "app_slug_title": "Slug aplikácie", "app_slug_error": "Slug aplikácie je povinný", - "app_maker_title": "Tvorca aplikácie", - "app_maker_error": "Tvorca aplikácie je povinný", + "invalid_website_error": "Neplatná webová stránka", "webhook_url_title": "URL Webhooku", "webhook_url_error": "URL webhooku je povinné", "invalid_webhook_url_error": "Neplatné URL webhooku", @@ -315,6 +385,8 @@ "authorized_javascript_origins_description": "Zadajte pôvody oddelené medzerami, odkiaľ bude môcť aplikácia robiť požiadavky, napr. app.com example.com", "create_app": "Vytvoriť aplikáciu", "update_app": "Aktualizovať aplikáciu", + "build_your_own_app": "Vytvorte si vlastnú aplikáciu", + "edit_app_details": "Upraviť detaily aplikácie", "regenerate_client_secret_description": "Znovu vygenerovať tajomstvo klienta. Po regenerácii môžete kľúč skopírovať alebo stiahnuť do CSV súboru.", "regenerate_client_secret": "Znovu vygenerovať tajomstvo klienta", "regenerate_client_secret_confirm_title": "Ste si istí, že chcete znovu vygenerovať tajomstvo klienta?", @@ -361,7 +433,6 @@ "video_url_title": "URL Video", "video_url_error": "URL Video je povinné", "invalid_video_url_error": "Neplatné URL Video", - "setup_url_title": "URL Nastavenia", "setup_url_error": "URL Nastavenia je povinné", "invalid_setup_url_error": "Neplatné URL Nastavenia", "configuration_url_title": "URL Konfigurácie", @@ -377,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Neplatný súbor alebo presahuje limit veľkosti ({size} MB)", "uploading": "Nahrávanie...", "upload_and_save": "Nahrať a uložiť", - "app_credentials_regenrated": { - "title": "Prihlasovacie údaje aplikácie boli úspešne znovu vygenerované", - "description": "Nahraďte klientsky kľúč všade, kde sa používa. Predchádzajúci kľúč už nie je platný." - }, - "app_created": { - "title": "Aplikácia bola úspešne vytvorená", - "description": "Použite prihlasovacie údaje na inštaláciu aplikácie do pracovného priestoru Plane" - }, - "installed_apps": "Nainštalované aplikácie", - "all_apps": "Všetky aplikácie", - "internal_apps": "Interné aplikácie", - "website": { - "title": "Webová stránka", - "description": "Odkaz na webovú stránku vašej aplikácie.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Tvorca aplikácií", - "description": "Osoba alebo organizácia, ktorá vytvára aplikáciu." - }, - "setup_url": { - "label": "URL nastavenia", - "description": "Používatelia budú po nainštalovaní aplikácie presmerovaní na túto URL.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL", - "description": "Tu budeme posielať udalosti webhook a aktualizácie z pracovných priestorov, kde je vaša aplikácia nainštalovaná.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "Presmerovacie URI (oddelené medzerou)", - "description": "Používatelia budú po autentifikácii pomocou Plane presmerovaní na túto cestu.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Požiadavka na inštaláciu", "app_consent_no_access_description": "Táto aplikácia môže byť nainštalovaná až po jej inštalácii administrátorom pracovného priestoru. Kontaktujte svojho administrátora pracovného priestoru, aby ste mohli pokračovať.", + "app_consent_unapproved_title": "Túto aplikáciu Plane ešte neskontrolovalo ani neschválilo.", + "app_consent_unapproved_description": "Pred prepojením s pracovným priestorom sa uistite, že tejto aplikácii dôverujete.", + "go_to_app": "Prejsť na aplikáciu", "enable_app_mentions": "Povoliť zmienky o aplikácii", "enable_app_mentions_tooltip": "Keď je toto povolené, používatelia môžu spomenúť alebo priradiť pracovné položky tejto aplikácii.", "scopes": "Rozsahy", @@ -432,15 +472,18 @@ "profile": "Prístup k informáciám o profile používateľa", "agents": "Prístup k agentom a všetkým súvisiacim entitám", "assets": "Prístup k aktívam a všetkým súvisiacim entitám" - }, - "build_your_own_app": "Vytvorte si vlastnú aplikáciu", - "edit_app_details": "Upraviť detaily aplikácie", - "internal": "Interný" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Vidíte, ako sa vaša práca stáva inteligentnejšou a rýchlejšou s pomocou AI, ktorá je natívne pripojená k vašej práci a znalostnej základni." + }, + "runners": { + "title": "Plane Runner", + "heading": "Skripty", + "new_script": "Nový skript", + "description": "Automatizujte svoje pracovné postupy pomocou vlastných skriptov a automatizačných pravidiel." } }, "empty_state": { diff --git a/packages/i18n/src/locales/sk/workspace.json b/packages/i18n/src/locales/sk/workspace.json index d96eaa7648e..55a77e6ac89 100644 --- a/packages/i18n/src/locales/sk/workspace.json +++ b/packages/i18n/src/locales/sk/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Rozsah a dopyt", "custom": "Vlastná analytika" }, + "total": "Celkový počet {entity}", + "started_work_items": "Spustené {entity}", + "backlog_work_items": "{entity} v backlogu", + "un_started_work_items": "Nespustené {entity}", + "completed_work_items": "Dokončené {entity}", + "project_insights": "Prehľad projektu", + "summary_of_projects": "Súhrn projektov", + "all_projects": "Všetky projekty", + "trend_on_charts": "Trend na grafoch", + "active_projects": "Aktívne projekty", + "customized_insights": "Prispôsobené prehľady", + "created_vs_resolved": "Vytvorené vs Vyriešené", "empty_state": { - "customized_insights": { - "description": "Pracovné položky priradené vám, rozdelené podľa stavu, sa zobrazia tu.", - "title": "Zatiaľ žiadne údaje" + "project_insights": { + "title": "Zatiaľ žiadne údaje", + "description": "Pracovné položky priradené vám, rozdelené podľa stavu, sa zobrazia tu." }, "created_vs_resolved": { - "description": "Pracovné položky vytvorené a vyriešené v priebehu času sa zobrazia tu.", - "title": "Zatiaľ žiadne údaje" + "title": "Zatiaľ žiadne údaje", + "description": "Pracovné položky vytvorené a vyriešené v priebehu času sa zobrazia tu." }, - "project_insights": { + "customized_insights": { "title": "Zatiaľ žiadne údaje", "description": "Pracovné položky priradené vám, rozdelené podľa stavu, sa zobrazia tu." }, @@ -132,29 +144,11 @@ "description": "Analýza trendov príjmu sa zobrazí tu. Pridajte pracovné položky do príjmu, aby ste mohli sledovať trendy." } }, - "created_vs_resolved": "Vytvorené vs Vyriešené", - "customized_insights": "Prispôsobené prehľady", - "backlog_work_items": "{entity} v backlogu", - "active_projects": "Aktívne projekty", - "trend_on_charts": "Trend na grafoch", - "all_projects": "Všetky projekty", - "summary_of_projects": "Súhrn projektov", - "project_insights": "Prehľad projektu", - "started_work_items": "Spustené {entity}", - "total_work_items": "Celkový počet {entity}", - "total_projects": "Celkový počet projektov", - "total_admins": "Celkový počet administrátorov", - "total_users": "Celkový počet používateľov", - "total_intake": "Celkový príjem", - "un_started_work_items": "Nespustené {entity}", - "total_guests": "Celkový počet hostí", - "completed_work_items": "Dokončené {entity}", - "total": "Celkový počet {entity}", + "upgrade_to_plan": "Inovujte na {plan}, aby ste odomkli kartu {tab}", + "workitem_resolved_vs_pending": "Vyriešené vs. čakajúce pracovné položky", "projects_by_status": "Projekty podľa stavu", "active_users": "Aktívni používatelia", - "intake_trends": "Trendy prijímania", - "workitem_resolved_vs_pending": "Vyriešené vs. čakajúce pracovné položky", - "upgrade_to_plan": "Inovujte na {plan}, aby ste odomkli kartu {tab}" + "intake_trends": "Trendy prijímania" }, "workspace_projects": { "label": "{count, plural, one {Projekt} few {Projekty} other {Projektov}}", @@ -318,6 +312,10 @@ "archived": { "title": "Zatiaľ žiadne archivované stránky", "description": "Archivujte stránky, ktoré nie sú vo vašom radare. Keď ich budete potrebovať, pristupujte k nim tu." + }, + "shared": { + "title": "Zatiaľ žiadne zdieľané stránky", + "description": "Stránky, ktoré s vami zdieľali iní, sa zobrazia tu." } } }, diff --git a/packages/i18n/src/locales/tr-TR/auth.json b/packages/i18n/src/locales/tr-TR/auth.json index 85ae2610009..041a7292670 100644 --- a/packages/i18n/src/locales/tr-TR/auth.json +++ b/packages/i18n/src/locales/tr-TR/auth.json @@ -1,164 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "E-posta", - "placeholder": "isim@şirket.com", - "errors": { - "required": "E-posta gerekli", - "invalid": "Geçersiz e-posta" - } - }, - "password": { - "label": "Şifre", - "set_password": "Şifre belirle", - "placeholder": "Şifreyi girin", - "confirm_password": { - "label": "Şifreyi onayla", - "placeholder": "Şifreyi onayla" - }, - "current_password": { - "label": "Mevcut şifre", - "placeholder": "Mevcut şifreyi girin" - }, - "new_password": { - "label": "Yeni şifre", - "placeholder": "Yeni şifreyi girin" - }, - "change_password": { - "label": { - "default": "Şifreyi değiştir", - "submitting": "Şifre değiştiriliyor" - } - }, - "errors": { - "match": "Şifreler eşleşmiyor", - "empty": "Lütfen şifrenizi girin", - "length": "Şifre uzunluğu 8 karakterden fazla olmalı", - "strength": { - "weak": "Şifre zayıf", - "strong": "Şifre güçlü" - } - }, - "submit": "Şifreyi belirle", - "toast": { - "change_password": { - "success": { - "title": "Başarılı!", - "message": "Şifre başarıyla değiştirildi." - }, - "error": { - "title": "Hata!", - "message": "Bir şeyler ters gitti. Lütfen tekrar deneyin." - } - } - } - }, - "unique_code": { - "label": "Benzersiz kod", - "placeholder": "alır-atar-uçar", - "paste_code": "E-postanıza gönderilen kodu yapıştırın", - "requesting_new_code": "Yeni kod isteniyor", - "sending_code": "Kod gönderiliyor" - }, - "already_have_an_account": "Zaten bir hesabınız var mı?", - "login": "Giriş yap", - "create_account": "Hesap oluştur", - "new_to_plane": "Plane'e yeni mi geldiniz?", - "back_to_sign_in": "Giriş yapmaya geri dön", - "resend_in": "{seconds} saniye içinde tekrar gönder", - "sign_in_with_unique_code": "Benzersiz kod ile giriş yap", - "forgot_password": "Şifrenizi mi unuttunuz?", - "username": { - "label": "Kullanıcı adı", - "placeholder": "Kullanıcı adınızı girin" - } - }, - "sign_up": { - "header": { - "label": "Ekibinizle işleri yönetmeye başlamak için bir hesap oluşturun.", - "step": { - "email": { - "header": "Kaydol", - "sub_header": "" - }, - "password": { - "header": "Kaydol", - "sub_header": "E-posta-şifre kombinasyonu kullanarak kaydolun." - }, - "unique_code": { - "header": "Kaydol", - "sub_header": "Yukarıdaki e-posta adresine gönderilen benzersiz bir kod kullanarak kaydolun." - } - } - }, - "errors": { - "password": { - "strength": "Devam etmek için güçlü bir şifre belirlemeyi deneyin" - } - } - }, - "sign_in": { - "header": { - "label": "Ekibinizle işleri yönetmeye başlamak için giriş yapın.", - "step": { - "email": { - "header": "Giriş yap veya kaydol", - "sub_header": "" - }, - "password": { - "header": "Giriş yap veya kaydol", - "sub_header": "Giriş yapmak için e-posta-şifre kombinasyonunuzu kullanın." - }, - "unique_code": { - "header": "Giriş yap veya kaydol", - "sub_header": "Yukarıdaki e-posta adresine gönderilen benzersiz bir kod kullanarak giriş yapın." - } - } - } - }, - "forgot_password": { - "title": "Şifrenizi sıfırlayın", - "description": "Kullanıcı hesabınızın doğrulanmış e-posta adresini girin, size bir şifre sıfırlama bağlantısı göndereceğiz.", - "email_sent": "Sıfırlama bağlantısını e-posta adresinize gönderdik", - "send_reset_link": "Sıfırlama bağlantısı gönder", - "errors": { - "smtp_not_enabled": "Yöneticinizin SMTP'yi etkinleştirmediğini görüyoruz, bu yüzden şifre sıfırlama bağlantısı gönderemeyeceğiz" - }, - "toast": { - "success": { - "title": "E-posta gönderildi", - "message": "Şifrenizi sıfırlamak için gelen kutunuzu kontrol edin. Birkaç dakika içinde gelmezse, spam klasörünüzü kontrol edin." - }, - "error": { - "title": "Hata!", - "message": "Bir şeyler ters gitti. Lütfen tekrar deneyin." - } - } - }, - "reset_password": { - "title": "Yeni şifre belirle", - "description": "Hesabınızı güçlü bir şifreyle güvence altına alın" - }, - "set_password": { - "title": "Hesabınızı güvence altına alın", - "description": "Şifre belirlemek güvenli bir şekilde giriş yapmanıza yardımcı olur" - }, - "sign_out": { - "toast": { - "error": { - "title": "Hata!", - "message": "Çıkış yapılamadı. Lütfen tekrar deneyin." - } - } - }, - "ldap": { - "header": { - "label": "{ldapProviderName} ile devam et", - "sub_header": "{ldapProviderName} kimlik bilgilerinizi girin" - } - } - }, "sso": { "header": "Kimlik", "description": "Tek oturum açma dahil güvenlik özelliklerine erişmek için etki alanınızı yapılandırın.", @@ -365,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "E-posta", + "placeholder": "isim@şirket.com", + "errors": { + "required": "E-posta gerekli", + "invalid": "Geçersiz e-posta" + } + }, + "password": { + "label": "Şifre", + "set_password": "Şifre belirle", + "placeholder": "Şifreyi girin", + "confirm_password": { + "label": "Şifreyi onayla", + "placeholder": "Şifreyi onayla" + }, + "current_password": { + "label": "Mevcut şifre" + }, + "new_password": { + "label": "Yeni şifre", + "placeholder": "Yeni şifreyi girin" + }, + "change_password": { + "label": { + "default": "Şifreyi değiştir", + "submitting": "Şifre değiştiriliyor" + } + }, + "errors": { + "match": "Şifreler eşleşmiyor", + "empty": "Lütfen şifrenizi girin", + "length": "Şifre uzunluğu 8 karakterden fazla olmalı", + "strength": { + "weak": "Şifre zayıf", + "strong": "Şifre güçlü" + } + }, + "submit": "Şifreyi belirle", + "toast": { + "change_password": { + "success": { + "title": "Başarılı!", + "message": "Şifre başarıyla değiştirildi." + }, + "error": { + "title": "Hata!", + "message": "Bir şeyler ters gitti. Lütfen tekrar deneyin." + } + } + } + }, + "unique_code": { + "label": "Benzersiz kod", + "placeholder": "alır-atar-uçar", + "paste_code": "E-postanıza gönderilen kodu yapıştırın", + "requesting_new_code": "Yeni kod isteniyor", + "sending_code": "Kod gönderiliyor" + }, + "already_have_an_account": "Zaten bir hesabınız var mı?", + "login": "Giriş yap", + "create_account": "Hesap oluştur", + "new_to_plane": "Plane'e yeni mi geldiniz?", + "back_to_sign_in": "Giriş yapmaya geri dön", + "resend_in": "{seconds} saniye içinde tekrar gönder", + "sign_in_with_unique_code": "Benzersiz kod ile giriş yap", + "forgot_password": "Şifrenizi mi unuttunuz?", + "username": { + "label": "Kullanıcı adı", + "placeholder": "Kullanıcı adınızı girin" + } + }, + "sign_up": { + "header": { + "label": "Ekibinizle işleri yönetmeye başlamak için bir hesap oluşturun.", + "step": { + "email": { + "header": "Kaydol", + "sub_header": "" + }, + "password": { + "header": "Kaydol", + "sub_header": "E-posta-şifre kombinasyonu kullanarak kaydolun." + }, + "unique_code": { + "header": "Kaydol", + "sub_header": "Yukarıdaki e-posta adresine gönderilen benzersiz bir kod kullanarak kaydolun." + } + } + }, + "errors": { + "password": { + "strength": "Devam etmek için güçlü bir şifre belirlemeyi deneyin" + } + } + }, + "sign_in": { + "header": { + "label": "Ekibinizle işleri yönetmeye başlamak için giriş yapın.", + "step": { + "email": { + "header": "Giriş yap veya kaydol", + "sub_header": "" + }, + "password": { + "header": "Giriş yap veya kaydol", + "sub_header": "Giriş yapmak için e-posta-şifre kombinasyonunuzu kullanın." + }, + "unique_code": { + "header": "Giriş yap veya kaydol", + "sub_header": "Yukarıdaki e-posta adresine gönderilen benzersiz bir kod kullanarak giriş yapın." + } + } + } + }, + "forgot_password": { + "title": "Şifrenizi sıfırlayın", + "description": "Kullanıcı hesabınızın doğrulanmış e-posta adresini girin, size bir şifre sıfırlama bağlantısı göndereceğiz.", + "email_sent": "Sıfırlama bağlantısını e-posta adresinize gönderdik", + "send_reset_link": "Sıfırlama bağlantısı gönder", + "errors": { + "smtp_not_enabled": "Yöneticinizin SMTP'yi etkinleştirmediğini görüyoruz, bu yüzden şifre sıfırlama bağlantısı gönderemeyeceğiz" + }, + "toast": { + "success": { + "title": "E-posta gönderildi", + "message": "Şifrenizi sıfırlamak için gelen kutunuzu kontrol edin. Birkaç dakika içinde gelmezse, spam klasörünüzü kontrol edin." + }, + "error": { + "title": "Hata!", + "message": "Bir şeyler ters gitti. Lütfen tekrar deneyin." + } + } + }, + "reset_password": { + "title": "Yeni şifre belirle", + "description": "Hesabınızı güçlü bir şifreyle güvence altına alın" + }, + "set_password": { + "title": "Hesabınızı güvence altına alın", + "description": "Şifre belirlemek güvenli bir şekilde giriş yapmanıza yardımcı olur" + }, + "sign_out": { + "toast": { + "error": { + "title": "Hata!", + "message": "Çıkış yapılamadı. Lütfen tekrar deneyin." + } + } + }, + "ldap": { + "header": { + "label": "{ldapProviderName} ile devam et", + "sub_header": "{ldapProviderName} kimlik bilgilerinizi girin" + } + } } } diff --git a/packages/i18n/src/locales/tr-TR/automation.json b/packages/i18n/src/locales/tr-TR/automation.json index 4d5616344e3..5d44f9409ba 100644 --- a/packages/i18n/src/locales/tr-TR/automation.json +++ b/packages/i18n/src/locales/tr-TR/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Geri", "next": "Eylem ekle" + }, + "warning": { + "disabled_trigger_switching": "Oluşturulduktan sonra tetikleyici türünü değiştiremezsiniz" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Bir seçenek seçin", "handler_name": { "add_comment": "Yorum ekle", - "change_property": "Özelliği değiştir" + "change_property": "Özelliği değiştir", + "run_script": "Komut Dosyası Çalıştır" }, "configuration": { "label": "Yapılandırma", @@ -89,6 +93,9 @@ "comment_block": { "title": "Yorum ekle" }, + "run_script_block": { + "title": "Komut dosyası çalıştır" + }, "change_property_block": { "title": "Özelliği değiştir" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Otomasyon başlığı", + "scope": "Kapsam", + "projects": "Projeler", "last_run_on": "Son çalıştırma", "created_on": "Oluşturulma tarihi", "last_updated_on": "Son güncelleme", @@ -230,6 +239,35 @@ "description": "Otomasyonlar, projenizdeki görevleri otomatikleştirmenin bir yoludur.", "sub_description": "Otomasyonları kullandığınızda yönetim zamanınızın %80'ini geri kazanın." } + }, + "global_automations": { + "project_select": { + "label": "Bu otomasyonun çalıştırılacağı projeleri seçin", + "all_projects": { + "label": "Tüm projeler", + "description": "Otomasyon, çalışma alanındaki tüm projeler için çalışacak." + }, + "select_projects": { + "label": "Projeleri seç", + "description": "Otomasyon, çalışma alanındaki seçilen projeler için çalışacak.", + "placeholder": "Projeleri seç" + } + }, + "settings": { + "sidebar_label": "Otomasyonlar", + "title": "Otomasyonlar", + "description": "Global otomasyonlarla çalışma alanınızdaki süreçleri standartlaştırın." + }, + "table": { + "scope": { + "global": "Global", + "project": { + "label": "Proje", + "multiple": "Birden fazla", + "all": "Tümü" + } + } + } } } } diff --git a/packages/i18n/src/locales/tr-TR/common.json b/packages/i18n/src/locales/tr-TR/common.json index 239b1415901..74bd5cbf9b3 100644 --- a/packages/i18n/src/locales/tr-TR/common.json +++ b/packages/i18n/src/locales/tr-TR/common.json @@ -17,6 +17,7 @@ "no": "Hayır", "ok": "Tamam", "name": "Ad", + "unknown_user": "Bilinmeyen kullanıcı", "description": "Açıklama", "search": "Ara", "add_member": "Üye ekle", @@ -56,7 +57,8 @@ "no_worklogs": "Henüz çalışma kaydı yok", "no_history": "Henüz geçmiş yok" }, - "appearance": "Görünüm", + "preferences": "Tercihler", + "language_and_time": "Dil ve Saat", "notifications": "Bildirimler", "workspaces": "Çalışma Alanları", "create_workspace": "Çalışma Alanı Oluştur", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Bir hata oluştu. Lütfen tekrar deneyin.", "load_more": "Daha fazla yükle", "select_or_customize_your_interface_color_scheme": "Arayüz renk şemanızı seçin veya özelleştirin.", + "timezone_setting": "Geçerli saat dilimi ayarı.", + "language_setting": "Kullanıcı arayüzünde kullanılan dili seçin.", + "settings_moved_to_preferences": "Saat Dilimi ve Dil ayarları tercihlere taşındı.", + "go_to_preferences": "Tercihlere git", "select_the_cursor_motion_style_that_feels_right_for_you": "Size uygun imleç hareket stilini seçin.", "theme": "Tema", "smooth_cursor": "Yumuşak İmleç", @@ -163,6 +169,7 @@ "project_created_successfully": "Proje başarıyla oluşturuldu", "project_created_successfully_description": "Proje başarıyla oluşturuldu. Artık iş öğeleri eklemeye başlayabilirsiniz.", "project_name_already_taken": "Proje ismi zaten kullanılıyor.", + "project_name_cannot_contain_special_characters": "Proje adı özel karakterler içeremez.", "project_identifier_already_taken": "Proje kimliği zaten kullanılıyor.", "project_cover_image_alt": "Proje kapak resmi", "name_is_required": "Ad gereklidir", @@ -207,6 +214,7 @@ "issues": "İş Öğeleri", "cycles": "Döngüler", "modules": "Modüller", + "pages": "Sayfalar", "intake": "Talep", "renew": "Yenile", "preview": "Önizleme", @@ -298,6 +306,7 @@ "start_date": "Başlangıç tarihi", "end_date": "Bitiş tarihi", "due_date": "Son tarih", + "target_date": "Hedef tarih", "estimate": "Tahmin", "change_parent_issue": "Üst iş öğesini değiştir", "remove_parent_issue": "Üst iş öğesini kaldır", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Yeni şifre eski şifreden farklı olmalı", "edited": "düzenlendi", "bot": "Bot", + "settings_description": "Hesap, çalışma alanı ve proje tercihlerinizi tek yerden yönetin. Kolayca yapılandırmak için sekmeler arasında geçiş yapın.", + "back_to_workspace": "Çalışma alanına dön", "upgrade_request": "Yükseltme için Çalışma Alanı Yöneticinize başvurun.", "copied_to_clipboard": "Panoya kopyalandı", "copied_to_clipboard_description": "URL panonuza başarıyla kopyalandı", @@ -422,6 +433,9 @@ "modules": "Modüller", "labels": "Etiketler", "label": "Etiket", + "admins": "Yöneticiler", + "users": "Kullanıcılar", + "guests": "Misafirler", "assignees": "Atananlar", "assignee": "Atanan", "created_by": "Oluşturan", @@ -451,6 +465,8 @@ "work_item": "İş öğesi", "work_items": "İş Öğeleri", "sub_work_item": "Alt iş öğesi", + "views": "Görünümler", + "pages": "Sayfalar", "add": "Ekle", "warning": "Uyarı", "updating": "Güncelleniyor", @@ -496,7 +512,7 @@ "workspace_level": "Çalışma Alanı Seviyesi", "order_by": { "label": "Sırala", - "manual": "Manuel", + "manual": "Manuel - Sıra", "last_created": "Son oluşturulan", "last_updated": "Son güncellenen", "start_date": "Başlangıç tarihi", @@ -532,6 +548,7 @@ "continue": "Devam Et", "resend": "Yeniden Gönder", "relations": "İlişkiler", + "dependencies": "Bağımlılıklar", "errors": { "default": { "title": "Hata!", @@ -563,11 +580,27 @@ "quarter": "Çeyrek", "press_for_commands": "Komutlar için '/' tuşuna basın", "click_to_add_description": "Açıklama eklemek için tıkla", + "on_track": "Yolunda", + "off_track": "Yolunda değil", + "at_risk": "Risk altında", + "timeline": "Zaman çizelgesi", + "completion": "Tamamlama", + "upcoming": "Yaklaşan", + "completed": "Tamamlandı", + "in_progress": "Devam ediyor", + "planned": "Planlandı", + "paused": "Durduruldu", "search": { "label": "Ara", "placeholder": "Aramak için yazın", "no_matches_found": "Eşleşme bulunamadı", - "no_matching_results": "Eşleşen sonuç yok" + "no_matching_results": "Eşleşen sonuç yok", + "min_chars": "Arama için en az {count} karakter yazın", + "error": "Arama sonuçları alınırken hata oluştu", + "no_results": { + "title": "Eşleşen sonuç yok", + "description": "Tüm sonuçları görmek için arama kriterlerini kaldırın" + } }, "actions": { "edit": "Düzenle", @@ -585,7 +618,8 @@ "show_weekends": "Hafta sonlarını göster", "enable": "Etkinleştir", "disable": "Devre dışı bırak", - "copy_markdown": "Markdown'ı kopyala" + "copy_markdown": "Markdown'ı kopyala", + "reply": "Yanıtla" }, "name": "Ad", "discard": "Vazgeç", @@ -598,6 +632,7 @@ "disabled": "Devre Dışı", "mandate": "Yetki", "mandatory": "Zorunlu", + "global": "Global", "yes": "Evet", "no": "Hayır", "please_wait": "Lütfen bekleyin", @@ -607,6 +642,7 @@ "or": "veya", "next": "Sonraki", "back": "Geri", + "retry": "Tekrar dene", "cancelling": "İptal ediliyor", "configuring": "Yapılandırılıyor", "clear": "Temizle", @@ -661,31 +697,27 @@ "deactivated_user": "Devre dışı bırakılmış kullanıcı", "apply": "Uygula", "applying": "Uygulanıyor", - "users": "Kullanıcılar", - "admins": "Yöneticiler", - "guests": "Misafirler", - "on_track": "Yolunda", - "off_track": "Yolunda değil", - "at_risk": "Risk altında", - "timeline": "Zaman çizelgesi", - "completion": "Tamamlama", - "upcoming": "Yaklaşan", - "completed": "Tamamlandı", - "in_progress": "Devam ediyor", - "planned": "Planlandı", - "paused": "Durduruldu", + "overview": "Genel Bakış", "no_of": "{entity} sayısı", "resolved": "Çözüldü", + "get_started": "Başla", "worklogs": "Çalışma Logları", "project_updates": "Proje Güncellemeleri", - "overview": "Genel Bakış", "workflows": "İş Akışları", "templates": "Şablonlar", + "business": "İş", "members_and_teamspaces": "Üyeler ve Takım Alanları", + "recurring_work_items": "Yinelenen iş öğeleri", + "milestones": "Kilometre taşları", "open_in_full_screen": "{page} öğesini tam ekranda aç", "details": "Ayrıntılar", "project_structure": "Proje yapısı", - "custom_properties": "Özel özellikler" + "custom_properties": "Özel özellikler", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "X ekseni", @@ -791,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane başlatılamadı. Bu, bir veya daha fazla Plane servisinin başlatılamaması nedeniyle olabilir.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Emin olmak için setup.sh ve Docker loglarından View Logs'u seçin." }, + "customize_navigation": "Gezinmeyi özelleştir", + "personal": "Kişisel", + "accordion_navigation_control": "Akordeon kenar çubuğu gezinmesi", + "horizontal_navigation_bar": "Sekmeli Gezinme", + "show_limited_projects_on_sidebar": "Kenar çubuğunda sınırlı sayıda proje göster", + "enter_number_of_projects": "Proje sayısını girin", + "pin": "Sabitle", + "unpin": "Sabitlemeyi kaldır", "workspace_dashboards": "Dashbordlar", "pi_chat": "Plane AI", "in_app": "Uygulama İçi", "forms": "Formlar", - "choose_workspace_for_integration": "Bu uygulamayı bağlamak için bir çalışma alanı seçin", - "integrations_description": "Plane ile çalışan uygulamalar, yönetici olduğunuz bir çalışma alanına bağlanmalıdır.", - "create_a_new_workspace": "Yeni bir çalışma alanı oluştur", - "learn_more_about_workspaces": "Çalışma alanları hakkında daha fazla bilgi edinin", - "no_workspaces_to_connect": "Bağlamak için çalışma alanı yok", - "no_workspaces_to_connect_description": "Bir çalışma alanı oluşturmak için lütfen bu sayfaya dönün", + "milestones": "Kilometre taşları", + "milestones_description": "Kilometre taşları, iş öğelerini ortak tamamlanma tarihlerine göre hizalamak için bir katman sağlar.", "file_upload": { "upload_text": "Dosya yüklemek için buraya tıklayın", "drag_drop_text": "Sürükle ve Bırak", "processing": "İşleniyor", - "invalid": "Geçersiz dosya tipi", + "invalid_file_type": "Geçersiz dosya tipi", "missing_fields": "Eksik alanlar", "success": "{fileName} Yüklendi!" }, - "project_name_cannot_contain_special_characters": "Proje adı özel karakterler içeremez.", "date": "Tarih", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/tr-TR/editor.json b/packages/i18n/src/locales/tr-TR/editor.json index 92ae4e427dd..d9715e992a1 100644 --- a/packages/i18n/src/locales/tr-TR/editor.json +++ b/packages/i18n/src/locales/tr-TR/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Lütfen geçerli bir URL girin." } + }, + "ai_block": { + "content": { + "placeholder": "Bu bloğun içeriğini açıklayın", + "generated_here": "AI içeriğiniz burada oluşturulacak" + }, + "block_types": { + "placeholder": "Blok türü seçin", + "summarize_page": "Sayfayı Özetle", + "custom_prompt": "Özel İstem" + }, + "actions": { + "discard": "Vazgeç", + "generate": "Oluştur", + "generating": "Oluşturuluyor", + "rewriting": "Yeniden yazılıyor", + "rewrite": "Yeniden yaz", + "use_this": "Bunu kullan", + "refine": "İyileştir" + } } } diff --git a/packages/i18n/src/locales/tr-TR/empty-state.json b/packages/i18n/src/locales/tr-TR/empty-state.json index 1772a6e1c16..c326cea2bff 100644 --- a/packages/i18n/src/locales/tr-TR/empty-state.json +++ b/packages/i18n/src/locales/tr-TR/empty-state.json @@ -249,10 +249,22 @@ "title": "Tüm üyeler için zaman çizelgelerini takip edin", "description": "Projeler arasında herhangi bir ekip üyesi için ayrıntılı zaman çizelgelerini görmek için iş öğelerinde zaman kaydedin." }, + "group_syncing": { + "title": "Henüz grup eşlemesi yok" + }, "template_setting": { "title": "Henüz şablon yok", "description": "Projeler, iş öğeleri ve sayfalar için şablonlar oluşturarak kurulum süresini azaltın — ve saniyeler içinde yeni çalışmaya başlayın.", "cta_primary": "Şablon oluştur" + }, + "workflows": { + "title": "Henüz iş akışı yok", + "description": "İş öğelerinizin ilerlemesini yönetmek için iş akışları oluşturun.", + "cta_primary": "Yeni iş akışı ekle", + "states": { + "title": "Durum ekle", + "description": "İş öğesinin ilerlediği durumları seçin." + } } } } diff --git a/packages/i18n/src/locales/tr-TR/integration.json b/packages/i18n/src/locales/tr-TR/integration.json index fc397217851..0d9074fc754 100644 --- a/packages/i18n/src/locales/tr-TR/integration.json +++ b/packages/i18n/src/locales/tr-TR/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Durumlar yüklenirken sunucu hatası" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Bitbucket Data Center depolarınızı Plane ile bağlayın ve senkronize edin." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "API erişimi için harici IdP tokenlarını doğrulayın.", @@ -316,6 +320,7 @@ "pulling": "Çekiliyor", "timed_out": "Zaman aşımı", "pulled": "Çekildi", + "progressing": "Devam ediyor", "transforming": "Dönüştürülüyor", "transformed": "Dönüştürüldü", "pushing": "İtiliyor", diff --git a/packages/i18n/src/locales/tr-TR/module.json b/packages/i18n/src/locales/tr-TR/module.json index d0f77f84e93..43a72d96270 100644 --- a/packages/i18n/src/locales/tr-TR/module.json +++ b/packages/i18n/src/locales/tr-TR/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Modül} other {Modüller}}", - "no_module": "Modül yok" + "no_module": "Modül yok", + "select": "Modül ekle" } } diff --git a/packages/i18n/src/locales/tr-TR/navigation.json b/packages/i18n/src/locales/tr-TR/navigation.json index 00582f5d48d..f347e01b0fd 100644 --- a/packages/i18n/src/locales/tr-TR/navigation.json +++ b/packages/i18n/src/locales/tr-TR/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Sonuç bulunamadı" + } + } + }, "sidebar": { + "stickies": "Yapışkan Notlar", + "your_work": "Çalışmalarınız", "projects": "Projeler", "pages": "Sayfalar", "new_work_item": "Yeni iş öğesi", "home": "Ana Sayfa", - "your_work": "Çalışmalarınız", "inbox": "Gelen Kutusu", "workspace": "Çalışma Alanı", "views": "Görünümler", @@ -21,14 +29,6 @@ "epics": "Epiks", "upgrade_plan": "Apgreyd plen", "plane_pro": "Pleyn Pro", - "business": "Biznis", - "recurring_work_items": "Yinelenen iş öğeleri" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Sonuç bulunamadı" - } - } + "business": "Biznis" } } diff --git a/packages/i18n/src/locales/tr-TR/page.json b/packages/i18n/src/locales/tr-TR/page.json index 9559b9f2713..8ab72c06bd4 100644 --- a/packages/i18n/src/locales/tr-TR/page.json +++ b/packages/i18n/src/locales/tr-TR/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Sayfaları bağla", - "show_wiki_pages": "Wiki sayfalarını görüntüle", - "link_pages_to": "Sayfaları bağla", - "linked_pages": "Bağlı sayfalar", - "no_description": "Bu sayfa boş. Buraya bir şey yazın ve bunu buradaki yer tutucu olarak görün.", - "toasts": { - "link": { - "success": { - "title": "Sayfalar güncellendi", - "message": "Sayfalar başarıyla güncellendi" - }, - "error": { - "title": "Sayfalar güncellenemedi", - "message": "Sayfalar güncellenemedi" - } - }, - "remove": { - "success": { - "title": "Sayfa silindi", - "message": "Sayfa başarıyla silindi" - }, - "error": { - "title": "Sayfa silinemedi", - "message": "Sayfa silinemedi" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Eksik görseller", "description": "Burada görmek için görseller ekleyin." } + }, + "comments": { + "label": "Yorumlar", + "empty_state": { + "title": "Yorum yok", + "description": "Burada görmek için yorum ekleyin." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Yapışkan not adı 100 karakterden uzun olamaz.", + "already_exists": "Açıklaması olmayan bir yapışkan not zaten mevcut" + }, + "created": { + "title": "Yapışkan not oluşturuldu", + "message": "Yapışkan not başarıyla oluşturuldu" + }, + "not_created": { + "title": "Yapışkan not oluşturulamadı", + "message": "Yapışkan not oluşturulamadı" + }, + "updated": { + "title": "Yapışkan not güncellendi", + "message": "Yapışkan not başarıyla güncellendi" + }, + "not_updated": { + "title": "Yapışkan not güncellenemedi", + "message": "Yapışkan not güncellenemedi" + }, + "removed": { + "title": "Yapışkan not kaldırıldı", + "message": "Yapışkan not başarıyla kaldırıldı" + }, + "not_removed": { + "title": "Yapışkan not kaldırılamadı", + "message": "Yapışkan not kaldırılamadı" } }, "open_button": "Navigasyon panelini aç", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Taşı", + "loading": "Taşınıyor" + }, + "cannot_move_to_teamspace": "Özel ve paylaşılan sayfalar takım alanına taşınamaz.", "placeholders": { + "workspace_to_all": "Projeleri ve takım alanlarını ara", + "workspace_to_project": "Projeleri ara", + "project_to_all": "Projeleri ve takım alanlarını ara", + "project_to_project": "Projeleri ara", "project_to_all_with_wiki": "Wiki koleksiyonlarını, projeleri ve takım alanlarını ara", "project_to_project_with_wiki": "Wiki koleksiyonlarını ve projeleri ara" }, "toasts": { + "success": { + "title": "Başarılı!", + "message": "Sayfa başarıyla taşındı." + }, + "error": { + "title": "Hata!", + "message": "Sayfa taşınamadı. Lütfen daha sonra tekrar deneyin." + }, "collection_error": { "title": "Wiki'ye taşındı", "message": "Sayfa wiki'ye taşındı, ancak seçilen koleksiyona eklenemedi. General içinde kalır." diff --git a/packages/i18n/src/locales/tr-TR/project-settings.json b/packages/i18n/src/locales/tr-TR/project-settings.json index e49f2100966..3eb32620d39 100644 --- a/packages/i18n/src/locales/tr-TR/project-settings.json +++ b/packages/i18n/src/locales/tr-TR/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Üyeler", "project_lead": "Proje lideri", + "project_lead_description": "Proje için proje liderini seçin.", "default_assignee": "Varsayılan atanan", + "default_assignee_description": "Proje için varsayılan atanacak kişiyi seçin.", + "project_subscribers": "Proje aboneleri", + "project_subscribers_description": "Bu proje için bildirim alacak üyeleri seçin.", "guest_super_permissions": { "title": "Misafir kullanıcılara tüm iş öğelerini görüntüleme izni ver:", "sub_heading": "Bu, misafirlerin tüm proje iş öğelerini görüntülemesine izin verecektir." @@ -30,13 +34,11 @@ "title": "Üyeleri davet et", "sub_heading": "Projenizde çalışmaları için üyeleri davet edin.", "select_co_worker": "İş arkadaşı seç" - }, - "project_lead_description": "Proje için proje liderini seçin.", - "default_assignee_description": "Proje için varsayılan atanacak kişiyi seçin.", - "project_subscribers": "Proje aboneleri", - "project_subscribers_description": "Bu proje için bildirim alacak üyeleri seçin." + } }, "states": { + "heading": "Durumlar", + "description": "İş öğelerinizin ilerlemesini izlemek için iş akışı durumlarını tanımlayın ve özelleştirin.", "describe_this_state_for_your_members": "Bu durumu üyeleriniz için açıklayın.", "empty_state": { "title": "{groupKey} grubu için durum yok", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Etiketler", + "description": "İş öğelerinizi kategorize etmek ve düzenlemek için özel etiketler oluşturun", "label_title": "Etiket başlığı", "label_title_is_required": "Etiket başlığı gereklidir", "label_max_char": "Etiket adı 255 karakteri geçmemeli", @@ -52,16 +56,21 @@ } }, "estimates": { + "heading": "Tahminler", + "description": "Takımınızın karmaşıklık ve iş yükünü iletişim kurmanıza yardımcı olurlar.", "label": "Tahminler", "title": "Projem için tahminleri etkinleştir", - "description": "Takımınızın karmaşıklık ve iş yükünü iletişim kurmanıza yardımcı olurlar.", + "enable_description": "Takımın karmaşıklığını ve iş yükünü iletmenize yardımcı olurlar.", "no_estimate": "Tahmin yok", + "new": "Yeni tahmin sistemi", "create": { "custom": "Özel", "start_from_scratch": "Sıfırdan başla", "choose_template": "Şablon seç", "choose_estimate_system": "Tahmin sistemi seç", - "enter_estimate_point": "Tahmin puanı girin" + "enter_estimate_point": "Tahmin puanı girin", + "step": "Adım {step} / {total}", + "label": "Tahmin oluştur" }, "toasts": { "created": { @@ -129,9 +138,29 @@ "empty": "Tahmin değeri boş olamaz.", "already_exists": "Tahmin değeri zaten var.", "unsaved_changes": "Kaydedilmemiş değişiklikleriniz var, bitirmeden önce lütfen kaydedin", + "remove_empty": "Tahmin boş olamaz. Her alana bir değer girin veya değeri olmayanları kaldırın.", "fill": "Lütfen bu estimasyon alanını doldurun", "repeat": "Estimasyon değeri tekrar edemez" }, + "systems": { + "points": { + "label": "Puanlar", + "fibonacci": "Fibonacci", + "linear": "Doğrusal", + "squares": "Kareler", + "custom": "Özel" + }, + "categories": { + "label": "Kategoriler", + "t_shirt_sizes": "Tişört Boyutları", + "easy_to_hard": "Kolaydan zora", + "custom": "Özel" + }, + "time": { + "label": "Zaman", + "hours": "Saat" + } + }, "edit": { "title": "Estimasyon sistemini düzenle", "add_or_update": { @@ -149,6 +178,8 @@ }, "automations": { "label": "Otomasyonlar", + "heading": "Otomasyonlar", + "description": "Proje yönetimi iş akışınızı kolaylaştırmak ve manuel görevleri azaltmak için otomatik eylemleri yapılandırın.", "auto-archive": { "title": "Tamamlanan iş öğelerini otomatik arşivle", "description": "Plane, tamamlanan veya iptal edilen iş öğelerini otomatik arşivleyecek.", @@ -181,90 +212,116 @@ "description": "Proje iş öğelerinizi senkronize etmek için GitHub ve diğer entegrasyonları konfigüre edin." } }, - "cycles": { - "auto_schedule": { - "heading": "Otomatik döngü planlaması", - "description": "Döngüleri manuel kurulum olmadan devam ettirin.", - "tooltip": "Seçtiğiniz programa göre otomatik olarak yeni döngüler oluşturun.", - "edit_button": "Düzenle", - "form": { - "cycle_title": { - "label": "Döngü başlığı", - "placeholder": "Başlık", - "tooltip": "Başlık, sonraki döngüler için numaralarla tamamlanacaktır. Örneğin: Tasarım - 1/2/3", - "validation": { - "required": "Döngü başlığı zorunludur", - "max_length": "Başlık 255 karakteri aşmamalıdır" - } - }, - "cycle_duration": { - "label": "Döngü süresi", - "unit": "Hafta", - "validation": { - "required": "Döngü süresi zorunludur", - "min": "Döngü süresi en az 1 hafta olmalıdır", - "max": "Döngü süresi 30 haftayı aşamaz", - "positive": "Döngü süresi pozitif olmalıdır" - } - }, - "cooldown_period": { - "label": "Soğuma süresi", - "unit": "gün", - "tooltip": "Bir sonraki döngü başlamadan önce döngüler arası duraklatma.", - "validation": { - "required": "Soğuma süresi zorunludur", - "negative": "Soğuma süresi negatif olamaz" - } - }, - "start_date": { - "label": "Döngü başlangıç günü", - "validation": { - "required": "Başlangıç tarihi zorunludur", - "past": "Başlangıç tarihi geçmişte olamaz" - } + "workflows": { + "toggle": { + "title": "İş akışlarını etkinleştir", + "description": "İş öğesi hareketini kontrol etmek için iş akışları ayarlayın", + "no_states_tooltip": "İş akışına durum eklenmemiş.", + "no_work_item_types_tooltip": "İş akışına iş öğesi türü eklenmemiş.", + "no_states_or_work_item_types_tooltip": "İş akışına durum veya iş öğesi türü eklenmemiş.", + "toast": { + "loading": { + "enabling": "İş akışları etkinleştiriliyor", + "disabling": "İş akışları devre dışı bırakılıyor" }, - "number_of_cycles": { - "label": "Gelecekteki döngü sayısı", - "validation": { - "required": "Döngü sayısı zorunludur", - "min": "En az 1 döngü gereklidir", - "max": "3'ten fazla döngü planlanamaz" - } + "success": { + "title": "Başarılı!", + "message": "İş akışları başarıyla etkinleştirildi." }, - "auto_rollover": { - "label": "İş öğelerini otomatik devret", - "tooltip": "Bir döngünün tamamlandığı gün, tüm bitmemiş iş öğelerini bir sonraki döngüye taşıyın." + "error": { + "title": "Hata!", + "message": "İş akışları etkinleştirilemedi. Lütfen tekrar deneyin." + } + } + }, + "heading": "İş Akışları", + "description": "İş öğesi geçişlerini otomatikleştirin ve görevlerin proje süreciniz boyunca nasıl hareket ettiğini kontrol etmek için kurallar belirleyin.", + "add_button": "Yeni iş akışı ekle", + "search": "İş akışlarında ara", + "detail": { + "define": "İş akışı tanımla", + "add_states": "Durum ekle", + "unmapped_states": { + "title": "Eşlenmemiş durumlar tespit edildi", + "description": "Seçili türlerdeki bazı iş öğeleri şu anda bu iş akışında bulunmayan durumlarda.", + "note": "Bu iş akışını etkinleştirirseniz, bu öğeler otomatik olarak bu iş akışının başlangıç durumuna taşınır.", + "label": "Eksik durumlar", + "tooltip": "Bazı iş öğeleri bu iş akışına eşlenmemiş durumlarda. İncelemek için iş akışını açın." + } + }, + "select_states": { + "empty_state": { + "title": "Tüm durumlar kullanımda", + "description": "Bu proje için tanımlanan tüm durumlar zaten mevcut iş akışınızda mevcut." + } + }, + "default_footer": { + "fallback_message": "Bu iş akışı, bir iş akışına atanmamış herhangi bir iş öğesi türüne uygulanır." + }, + "create": { + "heading": "Yeni iş akışı oluştur", + "name": { + "placeholder": "Benzersiz bir ad ekleyin", + "validation": { + "max_length": "Ad 255 karakterden az olmalıdır", + "required": "Ad gereklidir", + "invalid": "Ad yalnızca harfler, rakamlar, boşluklar, tireler ve kesme işaretleri içerebilir" } }, - "toast": { - "toggle": { - "loading_enable": "Otomatik döngü planlaması etkinleştiriliyor", - "loading_disable": "Otomatik döngü planlaması devre dışı bırakılıyor", - "success": { - "title": "Başarılı!", - "message": "Otomatik döngü planlaması başarıyla değiştirildi." - }, - "error": { - "title": "Hata!", - "message": "Otomatik döngü planlaması değiştirilemedi." - } - }, - "save": { - "loading": "Otomatik döngü planlaması yapılandırması kaydediliyor", - "success": { - "title": "Başarılı!", - "message_create": "Otomatik döngü planlaması yapılandırması başarıyla kaydedildi.", - "message_update": "Otomatik döngü planlaması yapılandırması başarıyla güncellendi." - }, - "error": { - "title": "Hata!", - "message_create": "Otomatik döngü planlaması yapılandırması kaydedilemedi.", - "message_update": "Otomatik döngü planlaması yapılandırması güncellenemedi." - } + "description": { + "placeholder": "Kısa bir açıklama ekleyin", + "validation": { + "invalid": "Açıklama yalnızca harfler, rakamlar, boşluklar, tireler ve kesme işaretleri içerebilir" } + }, + "work_item_type": { + "label": "İş öğesi türü" + }, + "success": { + "title": "Başarılı!", + "message": "İş akışı başarıyla oluşturuldu." + }, + "error": { + "title": "Hata!", + "message": "İş akışı oluşturulamadı. Lütfen tekrar deneyin." + } + }, + "update": { + "success": { + "title": "Başarılı!", + "message": "İş akışı başarıyla güncellendi." + }, + "error": { + "title": "Hata!", + "message": "İş akışı güncellenemedi. Lütfen tekrar deneyin." + } + }, + "delete": { + "loading": "İş akışı siliniyor", + "success": { + "title": "Başarılı!", + "message": "İş akışı başarıyla silindi." + }, + "error": { + "title": "Hata!", + "message": "İş akışı silinemedi. Lütfen tekrar deneyin." + } + }, + "add_states": { + "success": { + "title": "Başarılı!", + "message": "Durumlar başarıyla eklendi." + }, + "error": { + "title": "Hata!", + "message": "Durumlar eklenemedi. Lütfen tekrar deneyin." } } }, + "work_item_types": { + "heading": "İş öğesi Türleri", + "description": "Benzersiz özelliklere sahip farklı iş öğesi türleri oluşturun ve özelleştirin" + }, "features": { "cycles": { "title": "Döngüler", @@ -366,6 +423,103 @@ "description": "Kilometre taşları, iş öğelerini ortak tamamlanma tarihlerine doğru hizalamak için bir katman sağlar.", "toggle_title": "Kilometre taşlarını etkinleştir", "toggle_description": "İş öğelerini kilometre taşı son tarihleri ile organize edin." + }, + "toasts": { + "loading": "Proje özelliği güncelleniyor...", + "success": "Proje özelliği başarıyla güncellendi.", + "error": "Proje özelliği güncellenirken bir şeyler yanlış gitti. Lütfen tekrar deneyin." + } + }, + "project_updates": { + "heading": "Proje Güncellemeleri", + "description": "Bu proje için birleştirilmiş takip ve ilerleme izleme" + }, + "templates": { + "heading": "Şablonlar", + "description": "Şablonları kullandığınızda projeler, iş öğeleri ve sayfalar oluşturmaya harcanan zamanın %80'ini tasarruf edin." + }, + "cycles": { + "auto_schedule": { + "heading": "Otomatik döngü planlaması", + "description": "Döngüleri manuel kurulum olmadan devam ettirin.", + "tooltip": "Seçtiğiniz programa göre otomatik olarak yeni döngüler oluşturun.", + "edit_button": "Düzenle", + "form": { + "cycle_title": { + "label": "Döngü başlığı", + "placeholder": "Başlık", + "tooltip": "Başlık, sonraki döngüler için numaralarla tamamlanacaktır. Örneğin: Tasarım - 1/2/3", + "validation": { + "required": "Döngü başlığı zorunludur", + "max_length": "Başlık 255 karakteri aşmamalıdır" + } + }, + "cycle_duration": { + "label": "Döngü süresi", + "unit": "Hafta", + "validation": { + "required": "Döngü süresi zorunludur", + "min": "Döngü süresi en az 1 hafta olmalıdır", + "max": "Döngü süresi 30 haftayı aşamaz", + "positive": "Döngü süresi pozitif olmalıdır" + } + }, + "cooldown_period": { + "label": "Soğuma süresi", + "unit": "gün", + "tooltip": "Bir sonraki döngü başlamadan önce döngüler arası duraklatma.", + "validation": { + "required": "Soğuma süresi zorunludur", + "negative": "Soğuma süresi negatif olamaz" + } + }, + "start_date": { + "label": "Döngü başlangıç günü", + "validation": { + "required": "Başlangıç tarihi zorunludur", + "past": "Başlangıç tarihi geçmişte olamaz" + } + }, + "number_of_cycles": { + "label": "Gelecekteki döngü sayısı", + "validation": { + "required": "Döngü sayısı zorunludur", + "min": "En az 1 döngü gereklidir", + "max": "3'ten fazla döngü planlanamaz" + } + }, + "auto_rollover": { + "label": "İş öğelerini otomatik devret", + "tooltip": "Bir döngünün tamamlandığı gün, tüm bitmemiş iş öğelerini bir sonraki döngüye taşıyın." + } + }, + "toast": { + "toggle": { + "loading_enable": "Otomatik döngü planlaması etkinleştiriliyor", + "loading_disable": "Otomatik döngü planlaması devre dışı bırakılıyor", + "success": { + "title": "Başarılı!", + "message": "Otomatik döngü planlaması başarıyla değiştirildi." + }, + "error": { + "title": "Hata!", + "message": "Otomatik döngü planlaması değiştirilemedi." + } + }, + "save": { + "loading": "Otomatik döngü planlaması yapılandırması kaydediliyor", + "success": { + "title": "Başarılı!", + "message_create": "Otomatik döngü planlaması yapılandırması başarıyla kaydedildi.", + "message_update": "Otomatik döngü planlaması yapılandırması başarıyla güncellendi." + }, + "error": { + "title": "Hata!", + "message_create": "Otomatik döngü planlaması yapılandırması kaydedilemedi.", + "message_update": "Otomatik döngü planlaması yapılandırması güncellenemedi." + } + } + } } } } diff --git a/packages/i18n/src/locales/tr-TR/project.json b/packages/i18n/src/locales/tr-TR/project.json index 96a6a8fb921..3731849a49b 100644 --- a/packages/i18n/src/locales/tr-TR/project.json +++ b/packages/i18n/src/locales/tr-TR/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Projeniz için filtreli görünümleri kaydedin. İhtiyacınız olduğu kadar oluşturun", + "description": "Görünümler, sık kullandığınız veya kolay erişim istediğiniz kayıtlı filtrelerdir. Bir projedeki tüm meslektaşlarınız herkesin görünümlerini görebilir ve ihtiyaçlarına en uygun olanı seçebilir.", + "primary_button": { + "text": "İlk görünümünüzü oluşturun", + "comic": { + "title": "Görünümler İş Öğesi özellikleri üzerinde çalışır.", + "description": "Buradan istediğiniz kadar özellikle filtre içeren bir görünüm oluşturabilirsiniz." + } + }, + "filter": { + "title": "Eşleşen görünüm yok", + "description": "Arama kriterleriyle eşleşen görünüm yok.\n Bunun yerine yeni bir görünüm oluşturun." + } + }, + "no_archived_issues": { + "title": "Henüz arşivlenmiş iş öğesi yok", + "description": "Manuel olarak veya otomasyon aracılığıyla, tamamlanan veya iptal edilen iş öğelerini arşivleyebilirsiniz. Arşivlendikten sonra burada bulabilirsiniz.", + "primary_button": { + "text": "Otomasyon ayarla" + } + }, + "issues_empty_filter": { + "title": "Uygulanan filtrelerle eşleşen iş öğesi bulunamadı", + "secondary_button": { + "text": "Tüm filtreleri temizle" + } + }, + "public": { + "title": "Henüz genel sayfa yok", + "description": "Projenizdeki herkesle paylaşılan sayfaları burada görün.", + "primary_button": { + "text": "İlk sayfanızı oluşturun" + } + }, + "archived": { + "title": "Henüz arşivlenmiş sayfa yok", + "description": "Radarınızda olmayan sayfaları arşivleyin. İhtiyaç duyduğunuzda buradan erişin." + }, + "shared": { + "title": "Henüz paylaşılan sayfa yok", + "description": "Başkalarının sizinle paylaştığı sayfalar burada görünecek." + } + }, + "delete_view": { + "title": "Bu görünümü silmek istediğinizden emin misiniz?", + "content": "Onaylarsanız, bu görünüm için seçtiğiniz tüm sıralama, filtreleme ve görüntüleme seçenekleri + düzen kalıcı olarak silinecek ve geri yükleme imkanı olmayacaktır." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Projeniz için filtreli görünümleri kaydedin. İhtiyacınız olduğu kadar oluşturun", - "description": "Görünümler, sık kullandığınız veya kolay erişim istediğiniz kayıtlı filtrelerdir. Bir projedeki tüm meslektaşlarınız herkesin görünümlerini görebilir ve ihtiyaçlarına en uygun olanı seçebilir.", - "primary_button": { - "text": "İlk görünümünüzü oluşturun", - "comic": { - "title": "Görünümler İş Öğesi özellikleri üzerinde çalışır.", - "description": "Buradan istediğiniz kadar özellikle filtre içeren bir görünüm oluşturabilirsiniz." - } - } - }, - "filter": { - "title": "Eşleşen görünüm yok", - "description": "Arama kriterleriyle eşleşen görünüm yok.\n Bunun yerine yeni bir görünüm oluşturun." - } - }, - "delete_view": { - "title": "Bu görünümü silmek istediğinizden emin misiniz?", - "content": "Onaylarsanız, bu görünüm için seçtiğiniz tüm sıralama, filtreleme ve görüntüleme seçenekleri + düzen kalıcı olarak silinecek ve geri yükleme imkanı olmayacaktır." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Manuel" } }, + "project_members": { + "full_name": "Ad soyad", + "display_name": "Görünen ad", + "email": "E-posta", + "joining_date": "Katılma tarihi", + "role": "Rol" + }, "project": { "members_import": { "title": "CSV'den üye içe aktar", diff --git a/packages/i18n/src/locales/tr-TR/settings.json b/packages/i18n/src/locales/tr-TR/settings.json index ab6d24fe730..3a510939256 100644 --- a/packages/i18n/src/locales/tr-TR/settings.json +++ b/packages/i18n/src/locales/tr-TR/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Tercihler", + "description": "Uygulama deneyiminizi çalışma şeklinize göre özelleştirin" + }, "notifications": { + "heading": "E-posta bildirimleri", + "description": "Abone olduğunuz İş öğelerinden haberdar olun. Bildirim almak için bunu etkinleştirin.", "select_default_view": "Varsayılan görünümü seç", "compact": "Kompakt", "full": "Tam ekran" + }, + "security": { + "heading": "Güvenlik" + }, + "api_tokens": { + "title": "Kişisel Erişim Tokenları", + "description": "Verilerinizi harici sistemler ve uygulamalarla entegre etmek için güvenli API tokenları oluşturun." + }, + "activity": { + "heading": "Aktivite", + "description": "Tüm projeler ve iş öğeleri genelinde son eylemlerinizi ve değişikliklerinizi izleyin." + }, + "connections": { + "title": "Bağlantılar", + "heading": "Bağlantılar", + "description": "Çalışma alanı bağlantı ayarlarınızı yönetin." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Profil", "security": "Güvenlik", "activity": "Aktivite", - "appearance": "Görünüm", + "preferences": "Tercihler", "notifications": "Bildirimler", + "api-tokens": "Kişisel Erişim Tokenları", "connections": "Bağlantılar" }, "tabs": { diff --git a/packages/i18n/src/locales/tr-TR/template.json b/packages/i18n/src/locales/tr-TR/template.json index 463daaaeda9..64f51365496 100644 --- a/packages/i18n/src/locales/tr-TR/template.json +++ b/packages/i18n/src/locales/tr-TR/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Şablonlar", "description": "Şablonları kullandığınızda projeler, iş öğeleri ve sayfalar oluşturmak için harcanan zamanın %80'ini tasarruf edin.", + "new_project_template": "Yeni proje şablonu", + "new_work_item_template": "Yeni iş öğesi şablonu", + "new_page_template": "Yeni sayfa şablonu", "options": { "project": { "label": "Proje şablonları" @@ -22,7 +25,10 @@ } }, "use_template": { - "button": "Şablonu kullan" + "button": { + "default": "Şablonu kullan", + "loading": "Uygulanıyor" + } }, "template_source": { "workspace": { @@ -154,6 +160,14 @@ "required": "En az bir anahtar kelime gereklidir" } }, + "website": { + "label": "Web sitesi URL'si", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Geçersiz URL", + "maxLength": "URL 800 karakterden az olmalıdır" + } + }, "company_name": { "label": "Şirket adı", "placeholder": "Plane", @@ -167,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Geçersiz e-posta adresi", - "required": "Destek e-postası gereklidir", "maxLength": "Destek e-postası 255 karakterden az olmalıdır" } }, @@ -223,6 +236,9 @@ "no_labels": { "description": "Henüz etiket yok. Projenizde iş öğelerini düzenlemek ve filtrelemek için etiketler oluşturun." }, + "no_modules": { + "description": "Henüz modül yok. Özel liderler ve atananlarla işleri alt projelere organize edin." + }, "no_work_items": { "description": "Henüz iş öğesi yok. Bir tane ekleyin, işinizi daha iyi yapılandırın." }, diff --git a/packages/i18n/src/locales/tr-TR/tour.json b/packages/i18n/src/locales/tr-TR/tour.json index 5c9ec3258ed..f9457f1f6ab 100644 --- a/packages/i18n/src/locales/tr-TR/tour.json +++ b/packages/i18n/src/locales/tr-TR/tour.json @@ -110,6 +110,12 @@ "description": "Bir çalışma öğesi daha sonra incelemek üzere ertelenebilir. Açık istek listenizin alt kısmına taşınacaktır." } }, + "mcp_connectors": { + "step_zero": { + "title": "Sekmeler arası geçişi bırakın. Dünyanızı bağlayın.", + "description": "PR'ları takip etmek ve sohbetleri doğrudan Plane AI'da özetlemek için GitHub ve Slack'i bağlayın." + } + }, "navigation": { "modal": { "title": "Navigasyon, yeniden hayal edildi", diff --git a/packages/i18n/src/locales/tr-TR/update.json b/packages/i18n/src/locales/tr-TR/update.json index f176bcc5c11..fc0f855fb3d 100644 --- a/packages/i18n/src/locales/tr-TR/update.json +++ b/packages/i18n/src/locales/tr-TR/update.json @@ -1,41 +1,16 @@ { "updates": { + "progress": { + "title": "İlerleme", + "since_last_update": "Son güncellemeden beri", + "comments": "{count, plural, one{# yorum} other{# yorum}}" + }, "add_update": "Güncelleme Ekle", "add_update_placeholder": "Buraya güncelleme ekleyin", "empty": { "title": "Henüz güncelleme yok", "description": "Burada güncellemelere göz atabilirsiniz." }, - "create": { - "success": { - "title": "Güncelleme oluşturuldu", - "message": "Güncelleme başarıyla oluşturuldu." - }, - "error": { - "title": "Güncelleme oluşturulamadı", - "message": "Güncelleme oluşturulamadı. Lütfen tekrar deneyin." - } - }, - "update": { - "success": { - "title": "Güncelleme güncellendi", - "message": "Güncelleme başarıyla güncellendi." - }, - "error": { - "title": "Güncelleme güncellenemedi", - "message": "Güncelleme güncellenemedi. Lütfen tekrar deneyin." - } - }, - "delete": { - "success": { - "title": "Güncelleme silindi", - "message": "Güncelleme başarıyla silindi." - }, - "error": { - "title": "Güncelleme silinemedi", - "message": "Güncelleme silinemedi. Lütfen tekrar deneyin." - } - }, "reaction": { "create": { "success": { @@ -58,10 +33,37 @@ } } }, - "progress": { - "title": "İlerleme", - "since_last_update": "Son güncellemeden beri", - "comments": "{count, plural, one{# yorum} other{# yorum}}" + "create": { + "success": { + "title": "Güncelleme oluşturuldu", + "message": "Güncelleme başarıyla oluşturuldu." + }, + "error": { + "title": "Güncelleme oluşturulamadı", + "message": "Güncelleme oluşturulamadı. Lütfen tekrar deneyin." + } + }, + "delete": { + "title": "Güncellemeyi sil", + "confirmation": "Bu güncellemeyi silmek istediğinizden emin misiniz? Bu işlem geri alınamaz.", + "success": { + "title": "Güncelleme silindi", + "message": "Güncelleme başarıyla silindi." + }, + "error": { + "title": "Güncelleme silinemedi", + "message": "Güncelleme silinemedi. Lütfen tekrar deneyin." + } + }, + "update": { + "success": { + "title": "Güncelleme güncellendi", + "message": "Güncelleme başarıyla güncellendi." + }, + "error": { + "title": "Güncelleme güncellenemedi", + "message": "Güncelleme güncellenemedi. Lütfen tekrar deneyin." + } } } } diff --git a/packages/i18n/src/locales/tr-TR/wiki.json b/packages/i18n/src/locales/tr-TR/wiki.json index 8cc07d22a64..d9ba5d3944e 100644 --- a/packages/i18n/src/locales/tr-TR/wiki.json +++ b/packages/i18n/src/locales/tr-TR/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Sayfa oluşturulamadı veya koleksiyona eklenemedi. Lütfen tekrar deneyin.", "collection_link_copied": "Koleksiyon bağlantısı panoya kopyalandı." } + }, + "wiki": { + "upgrade_flow": { + "title": "Wiki'yi açmak için yükseltin", + "description": "Plane Pro ile genel sayfaları, sürüm geçmişini, paylaşılan sayfaları, gerçek zamanlı işbirliğini ve wiki'ler, şirket içi belgeler ve bilgi tabanları için çalışma alanı sayfalarını açın.", + "upgrade_button": { + "text": "Yükselt" + }, + "learn_more_button": { + "text": "Daha fazla bilgi" + }, + "download_button": { + "text": "Verileri indir", + "loading": "İndiriliyor" + }, + "tabs": { + "nested_pages": "İç İçe Sayfalar", + "add_embeds": "Gömülü içerik ekle", + "publish_pages": "Sayfaları yayınla", + "comments": "Yorumlar" + } + }, + "nested_pages_download_banner": { + "title": "İç içe sayfalar ücretli bir plan gerektirir. Açmak için yükseltin." + } } } diff --git a/packages/i18n/src/locales/tr-TR/work-item-type.json b/packages/i18n/src/locales/tr-TR/work-item-type.json index 5656e87493a..160d7c46b7b 100644 --- a/packages/i18n/src/locales/tr-TR/work-item-type.json +++ b/packages/i18n/src/locales/tr-TR/work-item-type.json @@ -3,11 +3,25 @@ "label": "İş Öğesi Tipleri", "label_lowercase": "iş öğesi tipleri", "settings": { - "title": "İş Öğesi Tipleri", + "description": "Ekibinizin ihtiyaçlarına göre özelleştirin ve kendi özelliklerinizi ekleyin.", + "cant_delete_default_message": "Bu iş öğesi türü mevcut iş öğeleriyle bağlantılı olduğundan silinemez.", + "set_as_default": "Varsayılan olarak ayarla", + "cant_set_default_inactive_message": "Varsayılan olarak ayarlamadan önce bu türü etkinleştirin", + "set_default_confirmation": { + "title": "Varsayılan iş öğesi türü olarak ayarla", + "description": "{name} türünü varsayılan olarak ayarlamak, bu çalışma alanındaki tüm projelere aktarılmasını sağlar. Tüm yeni iş öğeleri varsayılan olarak bu türü kullanacaktır.", + "confirm_button": "Varsayılan olarak ayarla" + }, "properties": { "title": "Özel özellikler", + "description": "Özellikler oluşturun ve özelleştirin.", "tooltip": "Her iş öğesi tipi, Başlık, Açıklama, Atanan Kişi, Durum, Öncelik, Başlangıç tarihi, Bitiş tarihi, Modül, Döngü vb. gibi varsayılan bir özellik seti ile gelir. Ayrıca ekibinizin ihtiyaçlarına göre kendi özelliklerinizi özelleştirebilir ve ekleyebilirsiniz.", "add_button": "Yeni özellik ekle", + "project": { + "add_button": { + "import_from_workspace": "Çalışma alanından içe aktar" + } + }, "dropdown": { "label": "Özellik tipi", "placeholder": "Tip seçin" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Yeni özel özellik oluştur", + "update": "Özel özelliği güncelle" + }, "form": { "display_name": { "placeholder": "Başlık" @@ -213,9 +231,50 @@ "description": "Bu iş öğesi tipi için eklediğiniz yeni özellikler burada gösterilecektir." } }, + "types": { + "title": "Türler", + "description": "Özelliklere sahip iş öğesi türleri oluşturun ve özelleştirin.", + "sort_options": { + "project_count": "Dahil olduğu proje sayısı" + }, + "filter_options": { + "show_active": "Aktifleri göster", + "show_inactive": "Pasifleri göster" + }, + "project": { + "add_button": { + "create_new": "Yeni oluştur", + "import_from_workspace": "Çalışma alanından içe aktar" + }, + "banner": { + "with_access": "Çalışma alanı seviyesinden türleri içe aktarmak için iş öğesi türlerini etkinleştirin", + "without_access": "İş öğesi türleri devre dışı. Çalışma alanı ayarlarından etkinleştirmek için çalışma alanı yöneticisiyle iletişime geçin." + } + } + }, + "linked_properties": { + "title": "Özel özellikler", + "add_button": "Özellik ekle", + "modal": { + "title": "Özellik ekle", + "empty": { + "title": "Kullanılabilir özellik yok", + "description": "Tüm özellikler zaten bu türe bağlandı." + } + }, + "unlink_confirmation": { + "title": "Özelliğin bağlantısını kaldır", + "description": "Bu özelliğin bağlantısını kaldırmak, bu türü kullanan her iş öğesindeki tüm değerlerini kalıcı olarak siler. Bu işlem geri alınamaz.", + "input_label": "Yazın", + "input_label_suffix": "devam etmek için:", + "confirm": "Özelliğin bağlantısını kaldır", + "loading": "Bağlantı kaldırılıyor" + } + }, "item_delete_confirmation": { "title": "Bu türü sil", "description": "Türlerin silinmesi mevcut verilerin kaybına yol açabilir.", + "can_disable_warning": "Bunun yerine türü devre dışı bırakmak ister misiniz?", "primary_button": "Evet, sil", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Varsayılan iş öğesi türü silinemez", "cannot_delete_work_item_type_with_associated_work_items": "İlişkili iş öğeleri olan iş öğesi türü silinemez" - }, - "can_disable_warning": "Bunun yerine türü devre dışı bırakmak ister misiniz?" - }, - "cant_delete_default_message": "Bu iş öğesi türü mevcut iş öğeleriyle bağlantılı olduğundan silinemez.", - "set_as_default": "Varsayılan olarak ayarla", - "cant_set_default_inactive_message": "Varsayılan olarak ayarlamadan önce bu türü etkinleştirin", - "set_default_confirmation": { - "title": "Varsayılan iş öğesi türü olarak ayarla", - "description": "{name} türünü varsayılan olarak ayarlamak, bu çalışma alanındaki tüm projelere aktarılmasını sağlar. Tüm yeni iş öğeleri varsayılan olarak bu türü kullanacaktır.", - "confirm_button": "Varsayılan olarak ayarla" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Hata!", "message": { + "default": "İş öğesi tipi oluşturulamadı. Lütfen tekrar deneyin!", "conflict": "{name} türü zaten mevcut. Farklı bir ad seçin." } } @@ -269,6 +320,7 @@ "error": { "title": "Hata!", "message": { + "default": "İş öğesi tipi güncellenemedi. Lütfen tekrar deneyin!", "conflict": "{name} türü zaten mevcut. Farklı bir ad seçin." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Doğrulama hatası!", + "title": "Kaydetmek mevcut bağlantıları kopardı", "content": { "intro": "{workItemTypeName} iş öğesi türünde şunlar var:", - "parent_items": "{count, plural, one {üst iş öğesi} other {üst iş öğeleri}}", + "parent_items": "{count, plural, one {# üst bağlantı kaldırılacak} other {# üst bağlantı kaldırılacak}}.", "child_items": "{count, plural, one {alt iş öğesi} other {alt iş öğeleri}}", "parent_line_suffix_when_also_children": ", ve ", "footer": "Bu değişiklik, {workItemTypeName} iş öğesi türündeki mevcut iş öğelerinden üst-alt ilişkilerini kaldıracaktır." }, "confirm_input": { - "label": "Devam etmek için «Onayla» yazın.", - "placeholder": "Onayla" + "label": "Devam etmek için «onayla» yazın.", + "placeholder": "onayla" }, "error_toast": { "title": "Hata!", - "message": "Hiyerarşi kırılamadı. Lütfen tekrar deneyin." + "message": "Bağlantılar kaldırılamadı ve kaydedilemedi. Lütfen tekrar deneyin." }, "confirm_button": { - "loading": "Uygulanıyor", - "default": "Uygula ve bağlantıyı kaldır" + "loading": "Kaydediliyor", + "default": "Yine de kaydet" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/tr-TR/work-item.json b/packages/i18n/src/locales/tr-TR/work-item.json index 342db114754..0cf70387523 100644 --- a/packages/i18n/src/locales/tr-TR/work-item.json +++ b/packages/i18n/src/locales/tr-TR/work-item.json @@ -20,6 +20,7 @@ "due_date": "Son tarih ekle", "parent": "Üst iş öğesi ekle", "sub_issue": "Alt iş öğesi ekle", + "dependency": "Bağımlılık ekle", "relation": "İlişki ekle", "link": "Bağlantı ekle", "existing": "Varolan iş öğesi ekle" @@ -110,6 +111,43 @@ "copy_link": { "success": "Yorum bağlantısı panoya kopyalandı", "error": "Yorum bağlantısı kopyalanırken hata oluştu. Lütfen daha sonra tekrar deneyin." + }, + "replies": { + "create": { + "submit_button": "Yanıt ekle", + "placeholder": "Yanıt ekle" + }, + "toast": { + "fetch": { + "error": { + "message": "Yanıtlar alınamadı" + } + }, + "create": { + "success": { + "message": "Yanıt başarıyla oluşturuldu" + }, + "error": { + "message": "Yanıt oluşturulamadı" + } + }, + "update": { + "success": { + "message": "Yanıt başarıyla güncellendi" + }, + "error": { + "message": "Yanıt güncellenemedi" + } + }, + "delete": { + "success": { + "message": "Yanıt başarıyla silindi" + }, + "error": { + "message": "Yanıt silinemedi" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Tümünü seçme" }, "open_in_full_screen": "İş öğesini tam ekranda aç", + "duplicate": { + "modal": { + "title": "Başka bir projeye kopya oluştur", + "description1": "Bu, iş öğesinin bir kopyasını oluşturur.", + "description2": "Çoğaltılırken tüm özellik verileri kaldırılacaktır.", + "placeholder": "Bir proje seçin" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "İş öğesi başarıyla çoğaltıldı" + }, + "error": { + "message": "İş öğesi çoğaltılamadı" + } + } + }, + "pages": { + "link_pages": "Sayfaları bağla", + "show_wiki_pages": "Wiki sayfalarını göster", + "link_pages_to": "Sayfaları bağla:", + "linked_pages": "Bağlı sayfalar", + "no_description": "Bu boş bir sayfa. Neden içine bir şeyler yazmıyorsunuz ve bu yer tutucu gibi burada görünmesini sağlamıyorsunuz", + "toasts": { + "link": { + "success": { + "title": "Sayfalar güncellendi", + "message": "Sayfalar başarıyla güncellendi" + }, + "error": { + "title": "Sayfa güncelleme başarısız", + "message": "Sayfa güncelleme başarısız" + } + }, + "remove": { + "success": { + "title": "Sayfa kaldırıldı", + "message": "Sayfa başarıyla kaldırıldı" + }, + "error": { + "title": "Sayfa kaldırma başarısız", + "message": "Sayfa kaldırma başarısız" + } + } + } + }, "vote": { "click_to_upvote": "Olumlu oy vermek için tıklayın", "click_to_downvote": "Olumsuz oy vermek için tıklayın", @@ -241,54 +326,6 @@ "title": "İş öğeleri güncellenemiyor", "message": "Bazı iş öğeleri için durum değişikliğine izin verilmiyor. Durum değişikliğine izin verildiğinden emin olun." } - }, - "workflows": { - "toggle": { - "title": "İş akışlarını etkinleştir", - "description": "İş öğesi hareketini kontrol etmek için iş akışları ayarlayın", - "no_states_tooltip": "İş akışına eklenmiş durum yok.", - "toast": { - "loading": { - "enabling": "İş akışları etkinleştiriliyor", - "disabling": "İş akışları devre dışı bırakılıyor" - }, - "success": { - "title": "Başarılı!", - "message": "İş akışları başarıyla etkinleştirildi." - }, - "error": { - "title": "Hata!", - "message": "İş akışları etkinleştirilemedi. Lütfen tekrar deneyin." - } - } - }, - "heading": "İş akışları", - "description": "İş öğesi geçişlerini otomatikleştirin ve görevlerin proje akışınızda nasıl ilerlediğini kontrol etmek için kurallar belirleyin.", - "add_button": "Yeni iş akışı ekle", - "search": "İş akışlarında ara", - "detail": { - "define": "İş akışını tanımla", - "add_states": "Durum ekle", - "unmapped_states": { - "title": "Eşlenmemiş durumlar tespit edildi", - "description": "Seçilen türlerdeki bazı iş öğeleri şu anda bu iş akışında bulunmayan durumlarda yer alıyor.", - "note": "Bu iş akışını etkinleştirirseniz, bu öğeler otomatik olarak bu iş akışının başlangıç durumuna taşınacaktır.", - "label": "Eksik durumlar", - "tooltip": "Bazı iş öğeleri bu iş akışına eşlenmemiş durumlarda bulunuyor. İncelemek için iş akışını açın." - } - }, - "select_states": { - "empty_state": { - "title": "Tüm durumlar kullanımda", - "description": "Bu proje için tanımlanan tüm durumlar mevcut iş akışınızda zaten bulunuyor." - } - }, - "default_footer": { - "fallback_message": "Bu iş akışı, herhangi bir iş akışına atanmamış tüm iş öğesi türlerine uygulanır." - }, - "create": { - "heading": "Yeni iş akışı oluştur" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/tr-TR/workspace-settings.json b/packages/i18n/src/locales/tr-TR/workspace-settings.json index a8565c29bf7..c9eb5c0ad03 100644 --- a/packages/i18n/src/locales/tr-TR/workspace-settings.json +++ b/packages/i18n/src/locales/tr-TR/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Faturalandırma ve Planlar", + "description": "Planınızı seçin, abonelikleri yönetin ve ihtiyaçlarınız arttıkça kolayca yükseltin.", "title": "Faturalandırma ve Planlar", "current_plan": "Mevcut plan", "free_plan": "Şu anda ücretsiz planı kullanıyorsunuz", "view_plans": "Planları görüntüle" }, "exports": { + "heading": "Dışa Aktarımlar", + "description": "Proje verilerinizi çeşitli formatlarda dışa aktarın ve indirme bağlantılarıyla dışa aktarma geçmişinize erişin.", "title": "Dışa Aktarımlar", "exporting": "Dışa aktarılıyor", "previous_exports": "Önceki dışa aktarımlar", "export_separate_files": "Verileri ayrı dosyalara aktar", + "exporting_projects": "Proje dışa aktarılıyor", + "format": "Format", "filters_info": "Kriterlerinize göre belirli iş öğelerini dışa aktarmak için filtreler uygulayın.", "modal": { "title": "Şuraya aktar", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook'lar", + "description": "Proje olayları gerçekleştiğinde harici hizmetlere bildirimleri otomatikleştirin.", "title": "Webhook'lar", "add_webhook": "Webhook ekle", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Entegrasyonlar", + "heading": "Entegrasyonlar", + "description": "Tüm iş akışı ekosisteminizde işinizi senkronize etmek için popüler araçlar ve hizmetlerle bağlantı kurun.", "page_title": "Plane verilerinizi mevcut uygulamalarda veya kendi uygulamalarınızda kullanın.", "page_description": "Bu çalışma alanı veya sizin tarafınızdan kullanılan tüm entegrasyonları görüntüleyin." }, "imports": { - "title": "İmportlar" + "title": "İmportlar", + "heading": "İmportlar", + "description": "İş akışı entegrasyonunuzu kolaylaştırmak için mevcut proje yönetim araçlarınızdan verileri bağlayın ve içe aktarın." }, "worklogs": { - "title": "Workloglar" + "title": "Workloglar", + "heading": "Workloglar", + "description": "Herhangi bir projedeki herkes için çalışma günlüklerini (zaman çizelgelerini) indirin." }, "group_syncing": { "title": "Grup senkronizasyonu", @@ -242,7 +256,10 @@ "description": "Alan adınızı yapılandırın ve Tek oturum açmayı etkinleştirin" }, "project_states": { - "title": "Proje durumları" + "title": "Proje durumları", + "heading": "Tüm projeler için ilerleme özetini görün.", + "description": "Proje Durumları, herhangi bir proje özelliğine göre tüm projelerinizin ilerlemesini takip etmek için Plane'e özgü bir özelliktir.", + "go_to_settings": "Ayarlara git" }, "projects": { "title": "Projeler", @@ -252,6 +269,16 @@ "labels": "Proje etiketleri" } }, + "templates": { + "title": "Şablonlar", + "heading": "Şablonlar", + "description": "Şablonları kullandığınızda projeler, iş öğeleri ve sayfalar oluşturmaya harcanan zamanın %80'ini tasarruf edin." + }, + "relations": { + "title": "İlişkiler", + "heading": "İlişkiler", + "description": "Çalışma alanınızdaki iş öğelerini birbirine bağlayan ilişki türlerini oluşturun ve yönetin." + }, "cancel_trial": { "title": "Önce deneme sürenizi iptal edin.", "description": "Ücretli planlarımızdan birine ait aktif deneme süreniz var. Lütfen devam etmek için önce bunu iptal edin.", @@ -263,6 +290,7 @@ "cancel_error_message": "Lütfen tekrar deneyin." }, "applications": { + "internal": "Dahili", "title": "Aplikasyonlar", "applicationId_copied": "Aplikasyon ID panoya kopyalandı", "clientId_copied": "Klayınt ID panoya kopyalandı", @@ -271,10 +299,61 @@ "your_apps": "Aplikasyonlarınız", "connect": "Bağlan", "connected": "Bağlandı", + "disconnect": "Bağlantıyı kes", "install": "Yükle", "installed": "Yüklendi", "configure": "Yapılandır", "app_available": "Bu aplikasyonu bir Pleyn workspeysi ile kullanılabilir hale getirdiniz", + "app_credentials_regenrated": { + "title": "Uygulama kimlik bilgileri başarıyla yeniden oluşturuldu", + "description": "İstemci sırrını kullanıldığı her yerde değiştirin. Önceki sır artık geçerli değil." + }, + "app_created": { + "title": "Uygulama başarıyla oluşturuldu", + "description": "Uygulamayı bir Plane çalışma alanına yüklemek için kimlik bilgilerini kullanın" + }, + "installed_apps": "Yüklü uygulamalar", + "all_apps": "Tüm uygulamalar", + "internal_apps": "Dahili uygulamalar", + "app_name_title": "Bu aplikasyonu ne olarak adlandıracaksınız", + "app_description_title": { + "label": "Uzun açıklama", + "placeholder": "Pazar yeri için uzun bir açıklama yazın. Komutlar için '/' tuşuna basın." + }, + "authorization_grant_type": { + "title": "Bağlantı türü", + "description": "Uygulamanızın çalışma alanı için bir kez mi kurulması gerektiğini yoksa her kullanıcının kendi hesabını bağlamasına mı izin verileceğini seçin" + }, + "website": { + "title": "Web sitesi", + "description": "Uygulamanızın web sitesine bağlantı.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Uygulama Yapıcı", + "description": "Uygulamayı oluşturan kişi veya kuruluş." + }, + "app_maker_error": "Aplikasyon meykır gerekli", + "setup_url": { + "label": "Kurulum URL'si", + "description": "Kullanıcılar uygulamayı yüklediklerinde bu URL'ye yönlendirilecektir.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL'si", + "description": "Uygulamanızın yüklü olduğu çalışma alanlarından webhook olaylarını ve güncellemelerini buraya göndereceğiz.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhook Gizli Anahtarı", + "description": "Gelen webhook isteklerini doğrulamak için kullanılan gizli anahtar.", + "placeholder": "Rastgele bir gizli anahtar girin" + }, + "redirect_uris": { + "label": "Yönlendirme URI'leri (boşluk ile ayrılmış)", + "description": "Kullanıcılar Plane ile kimlik doğrulaması yaptıktan sonra bu yola yönlendirilecektir.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Kullanmaya başlamak için bir Pleyn workspeysi bağlayın", "client_id_and_secret": "Klayınt ID ve Sikrıt", "client_id_and_secret_description": "Bu sikrıt anahtarı Peycislere kopyalayıp kaydedin. Kapat'a bastıktan sonra bu anahtarı tekrar göremezsiniz.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slag zaten mevcut", "failed_to_create_application": "Aplikasyon oluşturulamadı", "upload_logo": "Logo yükle", - "app_name_title": "Bu aplikasyonu ne olarak adlandıracaksınız", "app_name_error": "Aplikasyon adı gerekli", "app_short_description_title": "Bu aplikasyona kısa bir açıklama verin", "app_short_description_error": "Aplikasyon kısa açıklaması gerekli", - "app_description_title": { - "label": "Uzun açıklama", - "placeholder": "Pazar yeri için uzun bir açıklama yazın. Komutlar için '/' tuşuna basın." - }, - "authorization_grant_type": { - "title": "Bağlantı türü", - "description": "Uygulamanızın çalışma alanı için bir kez mi kurulması gerektiğini yoksa her kullanıcının kendi hesabını bağlamasına mı izin verileceğini seçin" - }, "app_description_error": "Aplikasyon açıklaması gerekli", "app_slug_title": "Aplikasyon slag", "app_slug_error": "Aplikasyon slag gerekli", - "app_maker_title": "Aplikasyon Meykır", - "app_maker_error": "Aplikasyon meykır gerekli", + "invalid_website_error": "Geçersiz web sitesi", "webhook_url_title": "Webhuk URL", "webhook_url_error": "Webhuk URL gerekli", "invalid_webhook_url_error": "Geçersiz webhuk URL", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Aplikasyonun istek yapmasına izin verilecek boşlukla ayrılmış orijinleri girin örn. app.com example.com", "create_app": "Aplikasyon oluştur", "update_app": "Aplikasyonu güncelle", + "build_your_own_app": "Kendi uygulamanızı oluşturun", + "edit_app_details": "Uygulama ayrıntılarını düzenle", "regenerate_client_secret_description": "Klayınt sikrıtı yeniden oluştur. Sikrıtı yeniden oluşturursanız, anahtarı kopyalayabilir veya hemen sonra bir CSV dosyasına indirebilirsiniz.", "regenerate_client_secret": "Klayınt sikrıtı yeniden oluştur", "regenerate_client_secret_confirm_title": "Klayınt sikrıtı yeniden oluşturmak istediğinizden emin misiniz?", @@ -362,7 +433,6 @@ "video_url_title": "Video URL", "video_url_error": "Video URL gerekli", "invalid_video_url_error": "Geçersiz video URL", - "setup_url_title": "Kurulum URL", "setup_url_error": "Kurulum URL gerekli", "invalid_setup_url_error": "Geçersiz kurulum URL", "configuration_url_title": "Yapılandırma URL", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Geçersiz dosya veya boyut sınırını aşıyor ({size} MB)", "uploading": "Yükleniyor...", "upload_and_save": "Yükle ve kaydet", - "app_credentials_regenrated": { - "title": "Uygulama kimlik bilgileri başarıyla yeniden oluşturuldu", - "description": "İstemci sırrını kullanıldığı her yerde değiştirin. Önceki sır artık geçerli değil." - }, - "app_created": { - "title": "Uygulama başarıyla oluşturuldu", - "description": "Uygulamayı bir Plane çalışma alanına yüklemek için kimlik bilgilerini kullanın" - }, - "installed_apps": "Yüklü uygulamalar", - "all_apps": "Tüm uygulamalar", - "internal_apps": "Dahili uygulamalar", - "website": { - "title": "Web sitesi", - "description": "Uygulamanızın web sitesine bağlantı.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Uygulama Yapıcı", - "description": "Uygulamayı oluşturan kişi veya kuruluş." - }, - "setup_url": { - "label": "Kurulum URL'si", - "description": "Kullanıcılar uygulamayı yüklediklerinde bu URL'ye yönlendirilecektir.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL'si", - "description": "Uygulamanızın yüklü olduğu çalışma alanlarından webhook olaylarını ve güncellemelerini buraya göndereceğiz.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "Yönlendirme URI'leri (boşluk ile ayrılmış)", - "description": "Kullanıcılar Plane ile kimlik doğrulaması yaptıktan sonra bu yola yönlendirilecektir.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Yükleme talebi", "app_consent_no_access_description": "Bu uygulama yalnızca bir workspace yöneticisi tarafından kurulduktan sonra yüklenebilir. Devam etmek için workspace yöneticinizle iletişime geçin.", + "app_consent_unapproved_title": "Bu uygulama henüz Plane tarafından incelenmedi veya onaylanmadı.", + "app_consent_unapproved_description": "Bu uygulamayı çalışma alanınıza bağlamadan önce güvendiğinizden emin olun.", + "go_to_app": "Uygulamaya git", "enable_app_mentions": "Uygulama bahsini etkinleştir", "enable_app_mentions_tooltip": "Bu etkinleştirildiğinde, kullanıcılar Çalışma Öğelerini bu uygulamaya atayabilir veya bahsedebilir.", "scopes": "Kapsamlar", @@ -433,15 +472,18 @@ "profile": "Kullanıcı profil bilgilerine erişim", "agents": "Ajanlara ve tüm ajana bağlı varlıklara erişim", "assets": "Varlıklara ve tüm varlıkla ilgili öğelere erişim" - }, - "build_your_own_app": "Kendi uygulamanızı oluşturun", - "edit_app_details": "Uygulama ayrıntılarını düzenle", - "internal": "Dahili" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "İşinizi daha akıllı ve daha hızlı hale getirmek için doğal olarak işinize ve bilgi tabanınıza bağlı olan AI kullanın." + }, + "runners": { + "title": "Plane Runner", + "heading": "Komut Dosyaları", + "new_script": "Yeni Komut Dosyası", + "description": "İş akışlarınızı özel komut dosyaları ve otomasyon kurallarıyla otomatikleştirin." } }, "empty_state": { diff --git a/packages/i18n/src/locales/tr-TR/workspace.json b/packages/i18n/src/locales/tr-TR/workspace.json index 5f055d1ae50..19f64e7c48e 100644 --- a/packages/i18n/src/locales/tr-TR/workspace.json +++ b/packages/i18n/src/locales/tr-TR/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Kapsam ve Talep", "custom": "Özel Analitik" }, + "total": "Toplam {entity}", + "started_work_items": "Başlatılan {entity}", + "backlog_work_items": "Backlog {entity}", + "un_started_work_items": "Başlanmamış {entity}", + "completed_work_items": "Tamamlanmış {entity}", + "project_insights": "Proje İçgörüleri", + "summary_of_projects": "Projelerin Özeti", + "all_projects": "Tüm Projeler", + "trend_on_charts": "Grafiklerdeki eğilim", + "active_projects": "Aktif Projeler", + "customized_insights": "Özelleştirilmiş İçgörüler", + "created_vs_resolved": "Oluşturulan vs Çözülen", "empty_state": { - "customized_insights": { - "description": "Size atanan iş öğeleri, duruma göre ayrılarak burada gösterilecektir.", - "title": "Henüz veri yok" + "project_insights": { + "title": "Henüz veri yok", + "description": "Size atanan iş öğeleri, duruma göre ayrılarak burada gösterilecektir." }, "created_vs_resolved": { - "description": "Zaman içinde oluşturulan ve çözümlenen iş öğeleri burada gösterilecektir.", - "title": "Henüz veri yok" + "title": "Henüz veri yok", + "description": "Zaman içinde oluşturulan ve çözümlenen iş öğeleri burada gösterilecektir." }, - "project_insights": { + "customized_insights": { "title": "Henüz veri yok", "description": "Size atanan iş öğeleri, duruma göre ayrılarak burada gösterilecektir." }, @@ -132,29 +144,11 @@ "description": "Intake eğilim analizleri burada görünecek. Eğilimleri izlemeye başlamak için intake'e iş öğeleri ekleyin." } }, - "created_vs_resolved": "Oluşturulan vs Çözülen", - "customized_insights": "Özelleştirilmiş İçgörüler", - "backlog_work_items": "Backlog {entity}", - "active_projects": "Aktif Projeler", - "trend_on_charts": "Grafiklerdeki eğilim", - "all_projects": "Tüm Projeler", - "summary_of_projects": "Projelerin Özeti", - "project_insights": "Proje İçgörüleri", - "started_work_items": "Başlatılan {entity}", - "total_work_items": "Toplam {entity}", - "total_projects": "Toplam Proje", - "total_admins": "Toplam Yönetici", - "total_users": "Toplam Kullanıcı", - "total_intake": "Toplam Gelir", - "un_started_work_items": "Başlanmamış {entity}", - "total_guests": "Toplam Misafir", - "completed_work_items": "Tamamlanmış {entity}", - "total": "Toplam {entity}", + "upgrade_to_plan": "{tab} sekmesini açmak için {plan} planına geçin", + "workitem_resolved_vs_pending": "Çözülen vs bekleyen iş öğeleri", "projects_by_status": "Durumuna göre projeler", "active_users": "Aktif kullanıcılar", - "intake_trends": "Alım Eğilimleri", - "workitem_resolved_vs_pending": "Çözülen vs bekleyen iş öğeleri", - "upgrade_to_plan": "{tab} sekmesini açmak için {plan} planına geçin" + "intake_trends": "Alım Eğilimleri" }, "workspace_projects": { "label": "{count, plural, one {Proje} other {Projeler}}", @@ -318,6 +312,10 @@ "archived": { "title": "Henüz arşivlenmiş sayfa yok", "description": "Radarınızda olmayan sayfaları arşivleyin. Gerektiğinde bunlara buradan erişin." + }, + "shared": { + "title": "Henüz paylaşılan sayfa yok", + "description": "Başkalarının sizinle paylaştığı sayfalar burada görünecek." } } }, diff --git a/packages/i18n/src/locales/ua/auth.json b/packages/i18n/src/locales/ua/auth.json index e9b02f29328..93198c72341 100644 --- a/packages/i18n/src/locales/ua/auth.json +++ b/packages/i18n/src/locales/ua/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Електронна пошта", - "placeholder": "ім'я@компанія.ua", - "errors": { - "required": "Електронна пошта є обов'язковою", - "invalid": "Неправильна адреса електронної пошти" - } - }, - "password": { - "label": "Пароль", - "set_password": "Встановити пароль", - "placeholder": "Введіть пароль", - "confirm_password": { - "label": "Підтвердіть пароль", - "placeholder": "Підтвердіть пароль" - }, - "current_password": { - "label": "Поточний пароль" - }, - "new_password": { - "label": "Новий пароль", - "placeholder": "Введіть новий пароль" - }, - "change_password": { - "label": { - "default": "Змінити пароль", - "submitting": "Зміна пароля" - } - }, - "errors": { - "match": "Паролі не співпадають", - "empty": "Будь ласка, введіть свій пароль", - "length": "Довжина пароля має бути більше 8 символів", - "strength": { - "weak": "Пароль занадто слабкий", - "strong": "Пароль надійний" - } - }, - "submit": "Встановити пароль", - "toast": { - "change_password": { - "success": { - "title": "Успіх!", - "message": "Пароль було успішно змінено." - }, - "error": { - "title": "Помилка!", - "message": "Щось пішло не так. Будь ласка, спробуйте ще раз." - } - } - } - }, - "unique_code": { - "label": "Унікальний код", - "placeholder": "123456", - "paste_code": "Вставте код, надісланий на вашу електронну пошту", - "requesting_new_code": "Запитую новий код", - "sending_code": "Надсилаю код" - }, - "already_have_an_account": "Вже маєте обліковий запис?", - "login": "Увійти", - "create_account": "Створити обліковий запис", - "new_to_plane": "Вперше в Plane?", - "back_to_sign_in": "Повернутися до входу", - "resend_in": "Надіслати повторно через {seconds} секунд", - "sign_in_with_unique_code": "Увійти за допомогою унікального коду", - "forgot_password": "Забули пароль?", - "username": { - "label": "Ім'я користувача", - "placeholder": "Введіть ваше ім'я користувача" - } - }, - "sign_up": { - "header": { - "label": "Створіть обліковий запис і почніть керувати роботою зі своєю командою.", - "step": { - "email": { - "header": "Реєстрація", - "sub_header": "" - }, - "password": { - "header": "Реєстрація", - "sub_header": "Зареєструйтесь, використовуючи комбінацію електронної пошти та пароля." - }, - "unique_code": { - "header": "Реєстрація", - "sub_header": "Зареєструйтесь за допомогою унікального коду, надісланого на вказану вище адресу електронної пошти." - } - } - }, - "errors": { - "password": { - "strength": "Спробуйте встановити надійний пароль, щоб продовжити" - } - } - }, - "sign_in": { - "header": { - "label": "Увійдіть і почніть керувати роботою зі своєю командою.", - "step": { - "email": { - "header": "Увійти або зареєструватись", - "sub_header": "" - }, - "password": { - "header": "Увійти або зареєструватись", - "sub_header": "Використовуйте комбінацію електронної пошти та пароля, щоб увійти." - }, - "unique_code": { - "header": "Увійти або зареєструватись", - "sub_header": "Увійдіть за допомогою унікального коду, надісланого на вказану вище адресу електронної пошти." - } - } - } - }, - "forgot_password": { - "title": "Відновіть свій пароль", - "description": "Введіть підтверджену адресу електронної пошти вашого облікового запису, і ми надішлемо вам посилання для відновлення пароля.", - "email_sent": "Ми надіслали посилання для відновлення на вашу електронну пошту", - "send_reset_link": "Надіслати посилання для відновлення", - "errors": { - "smtp_not_enabled": "Адміністратор не активував SMTP, тому неможливо надіслати посилання для відновлення пароля" - }, - "toast": { - "success": { - "title": "Лист надіслано", - "message": "Перевірте свою пошту для відновлення пароля. Якщо не отримали протягом кількох хвилин, перевірте папку «Спам»." - }, - "error": { - "title": "Помилка!", - "message": "Щось пішло не так. Будь ласка, спробуйте ще раз." - } - } - }, - "reset_password": { - "title": "Встановити новий пароль", - "description": "Захистіть свій обліковий запис надійним паролем" - }, - "set_password": { - "title": "Захистіть свій обліковий запис", - "description": "Встановлення пароля допоможе безпечно входити у систему" - }, - "sign_out": { - "toast": { - "error": { - "title": "Помилка!", - "message": "Не вдалося вийти. Спробуйте знову." - } - } - }, - "ldap": { - "header": { - "label": "Продовжити з {ldapProviderName}", - "sub_header": "Введіть ваші облікові дані {ldapProviderName}" - } - } - }, "sso": { "header": "Ідентичність", "description": "Налаштуйте свій домен для доступу до функцій безпеки, включаючи єдиний вхід.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Електронна пошта", + "placeholder": "ім'я@компанія.ua", + "errors": { + "required": "Електронна пошта є обов'язковою", + "invalid": "Неправильна адреса електронної пошти" + } + }, + "password": { + "label": "Пароль", + "set_password": "Встановити пароль", + "placeholder": "Введіть пароль", + "confirm_password": { + "label": "Підтвердіть пароль", + "placeholder": "Підтвердіть пароль" + }, + "current_password": { + "label": "Поточний пароль" + }, + "new_password": { + "label": "Новий пароль", + "placeholder": "Введіть новий пароль" + }, + "change_password": { + "label": { + "default": "Змінити пароль", + "submitting": "Зміна пароля" + } + }, + "errors": { + "match": "Паролі не співпадають", + "empty": "Будь ласка, введіть свій пароль", + "length": "Довжина пароля має бути більше 8 символів", + "strength": { + "weak": "Пароль занадто слабкий", + "strong": "Пароль надійний" + } + }, + "submit": "Встановити пароль", + "toast": { + "change_password": { + "success": { + "title": "Успіх!", + "message": "Пароль було успішно змінено." + }, + "error": { + "title": "Помилка!", + "message": "Щось пішло не так. Будь ласка, спробуйте ще раз." + } + } + } + }, + "unique_code": { + "label": "Унікальний код", + "placeholder": "123456", + "paste_code": "Вставте код, надісланий на вашу електронну пошту", + "requesting_new_code": "Запитую новий код", + "sending_code": "Надсилаю код" + }, + "already_have_an_account": "Вже маєте обліковий запис?", + "login": "Увійти", + "create_account": "Створити обліковий запис", + "new_to_plane": "Вперше в Plane?", + "back_to_sign_in": "Повернутися до входу", + "resend_in": "Надіслати повторно через {seconds} секунд", + "sign_in_with_unique_code": "Увійти за допомогою унікального коду", + "forgot_password": "Забули пароль?", + "username": { + "label": "Ім'я користувача", + "placeholder": "Введіть ваше ім'я користувача" + } + }, + "sign_up": { + "header": { + "label": "Створіть обліковий запис і почніть керувати роботою зі своєю командою.", + "step": { + "email": { + "header": "Реєстрація", + "sub_header": "" + }, + "password": { + "header": "Реєстрація", + "sub_header": "Зареєструйтесь, використовуючи комбінацію електронної пошти та пароля." + }, + "unique_code": { + "header": "Реєстрація", + "sub_header": "Зареєструйтесь за допомогою унікального коду, надісланого на вказану вище адресу електронної пошти." + } + } + }, + "errors": { + "password": { + "strength": "Спробуйте встановити надійний пароль, щоб продовжити" + } + } + }, + "sign_in": { + "header": { + "label": "Увійдіть і почніть керувати роботою зі своєю командою.", + "step": { + "email": { + "header": "Увійти або зареєструватись", + "sub_header": "" + }, + "password": { + "header": "Увійти або зареєструватись", + "sub_header": "Використовуйте комбінацію електронної пошти та пароля, щоб увійти." + }, + "unique_code": { + "header": "Увійти або зареєструватись", + "sub_header": "Увійдіть за допомогою унікального коду, надісланого на вказану вище адресу електронної пошти." + } + } + } + }, + "forgot_password": { + "title": "Відновіть свій пароль", + "description": "Введіть підтверджену адресу електронної пошти вашого облікового запису, і ми надішлемо вам посилання для відновлення пароля.", + "email_sent": "Ми надіслали посилання для відновлення на вашу електронну пошту", + "send_reset_link": "Надіслати посилання для відновлення", + "errors": { + "smtp_not_enabled": "Адміністратор не активував SMTP, тому неможливо надіслати посилання для відновлення пароля" + }, + "toast": { + "success": { + "title": "Лист надіслано", + "message": "Перевірте свою пошту для відновлення пароля. Якщо не отримали протягом кількох хвилин, перевірте папку «Спам»." + }, + "error": { + "title": "Помилка!", + "message": "Щось пішло не так. Будь ласка, спробуйте ще раз." + } + } + }, + "reset_password": { + "title": "Встановити новий пароль", + "description": "Захистіть свій обліковий запис надійним паролем" + }, + "set_password": { + "title": "Захистіть свій обліковий запис", + "description": "Встановлення пароля допоможе безпечно входити у систему" + }, + "sign_out": { + "toast": { + "error": { + "title": "Помилка!", + "message": "Не вдалося вийти. Спробуйте знову." + } + } + }, + "ldap": { + "header": { + "label": "Продовжити з {ldapProviderName}", + "sub_header": "Введіть ваші облікові дані {ldapProviderName}" + } + } } } diff --git a/packages/i18n/src/locales/ua/automation.json b/packages/i18n/src/locales/ua/automation.json index c93b9eb221a..25a1f98a8f7 100644 --- a/packages/i18n/src/locales/ua/automation.json +++ b/packages/i18n/src/locales/ua/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Назад", "next": "Додати дію" + }, + "warning": { + "disabled_trigger_switching": "Неможливо змінити тип тригера після створення" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Виберіть опцію", "handler_name": { "add_comment": "Додати коментар", - "change_property": "Змінити властивість" + "change_property": "Змінити властивість", + "run_script": "Запустити скрипт" }, "configuration": { "label": "Конфігурація", @@ -89,6 +93,9 @@ "comment_block": { "title": "Додати коментар" }, + "run_script_block": { + "title": "Запустити скрипт" + }, "change_property_block": { "title": "Змінити властивість" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Назва автоматизації", + "scope": "Область", + "projects": "Проекти", "last_run_on": "Останній запуск", "created_on": "Створено", "last_updated_on": "Останнє оновлення", @@ -230,6 +239,35 @@ "description": "Автоматизації - це спосіб автоматизувати завдання у вашому проекті.", "sub_description": "Поверніть 80% свого адміністративного часу, коли використовуєте автоматизації." } + }, + "global_automations": { + "project_select": { + "label": "Виберіть проекти для запуску цієї автоматизації", + "all_projects": { + "label": "Усі проекти", + "description": "Автоматизація буде запущена для всіх проектів у робочому просторі." + }, + "select_projects": { + "label": "Вибрати проекти", + "description": "Автоматизація буде запущена для вибраних проектів у робочому просторі.", + "placeholder": "Вибрати проекти" + } + }, + "settings": { + "sidebar_label": "Автоматизації", + "title": "Автоматизації", + "description": "Стандартизуйте процеси у вашому робочому просторі за допомогою глобальних автоматизацій." + }, + "table": { + "scope": { + "global": "Глобальна", + "project": { + "label": "Проект", + "multiple": "Декілька", + "all": "Усі" + } + } + } } } } diff --git a/packages/i18n/src/locales/ua/common.json b/packages/i18n/src/locales/ua/common.json index fee068cc8f6..89bd906d8fa 100644 --- a/packages/i18n/src/locales/ua/common.json +++ b/packages/i18n/src/locales/ua/common.json @@ -17,6 +17,7 @@ "no": "Ні", "ok": "OK", "name": "Назва", + "unknown_user": "Невідомий користувач", "description": "Опис", "search": "Пошук", "add_member": "Додати учасника", @@ -56,7 +57,8 @@ "no_worklogs": "Записів роботи ще немає", "no_history": "Історії ще немає" }, - "appearance": "Зовнішній вигляд", + "preferences": "Налаштування", + "language_and_time": "Мова та час", "notifications": "Сповіщення", "workspaces": "Робочі простори", "create_workspace": "Створити робочий простір", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Щось пішло не так. Будь ласка, спробуйте ще раз.", "load_more": "Завантажити ще", "select_or_customize_your_interface_color_scheme": "Виберіть або налаштуйте колірну схему інтерфейсу.", + "timezone_setting": "Поточне налаштування часового поясу.", + "language_setting": "Виберіть мову, яку буде використано в інтерфейсі користувача.", + "settings_moved_to_preferences": "Налаштування часового поясу та мови переміщено до розділу Налаштування.", + "go_to_preferences": "Перейти до налаштувань", "select_the_cursor_motion_style_that_feels_right_for_you": "Виберіть стиль руху курсору, який вам підходить.", "theme": "Тема", "smooth_cursor": "Плавний курсор", @@ -163,6 +169,7 @@ "project_created_successfully": "Проєкт успішно створено", "project_created_successfully_description": "Проєкт успішно створений. Тепер ви можете почати додавати робочі одиниці.", "project_name_already_taken": "Назва проекту вже використовується.", + "project_name_cannot_contain_special_characters": "Назва проєкту не може містити спеціальні символи.", "project_identifier_already_taken": "Ідентифікатор проекту вже використовується.", "project_cover_image_alt": "Обкладинка проєкту", "name_is_required": "Назва є обов'язковою", @@ -207,6 +214,7 @@ "issues": "Робочі одиниці", "cycles": "Цикли", "modules": "Модулі", + "pages": "Сторінки", "intake": "Надходження", "renew": "Оновити", "preview": "Попередній перегляд", @@ -298,6 +306,7 @@ "start_date": "Дата початку", "end_date": "Дата завершення", "due_date": "Крайній термін", + "target_date": "Цільова дата", "estimate": "Оцінка", "change_parent_issue": "Змінити батьківську робочу одиницю", "remove_parent_issue": "Вилучити батьківську робочу одиницю", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Новий пароль повинен бути відмінним від старого пароля", "edited": "Редагувано", "bot": "Бот", + "settings_description": "Керуйте налаштуваннями облікового запису, робочого простору та проєкту в одному місці. Перемикайтеся між вкладками для зручного налаштування.", + "back_to_workspace": "Повернутися до робочого простору", "upgrade_request": "Попросіть адміністратора робочого простору виконати оновлення.", "copied_to_clipboard": "Скопійовано в буфер обміну", "copied_to_clipboard_description": "URL успішно скопійовано в буфер обміну", @@ -422,6 +433,9 @@ "modules": "Модулі", "labels": "Мітки", "label": "Мітка", + "admins": "Адміністратори", + "users": "Користувачі", + "guests": "Гості", "assignees": "Призначені", "assignee": "Призначено", "created_by": "Створено", @@ -451,6 +465,8 @@ "work_item": "Робоча одиниця", "work_items": "Робочі одиниці", "sub_work_item": "Похідна робоча одиниця", + "views": "Подання", + "pages": "Сторінки", "add": "Додати", "warning": "Попередження", "updating": "Оновлення", @@ -496,7 +512,7 @@ "workspace_level": "Рівень робочого простору", "order_by": { "label": "Сортувати за", - "manual": "Вручну", + "manual": "Вручну — Ранг", "last_created": "Останні створені", "last_updated": "Останні оновлені", "start_date": "Дата початку", @@ -532,6 +548,7 @@ "continue": "Продовжити", "resend": "Надіслати повторно", "relations": "Зв'язки", + "dependencies": "Залежності", "errors": { "default": { "title": "Помилка!", @@ -563,11 +580,27 @@ "quarter": "Квартал", "press_for_commands": "Натисніть '/' для команд", "click_to_add_description": "Натисніть, щоб додати опис", + "on_track": "У межах графіку", + "off_track": "Поза графіком", + "at_risk": "Під загрозою", + "timeline": "Хронологія", + "completion": "Завершення", + "upcoming": "Майбутнє", + "completed": "Завершено", + "in_progress": "В процесі", + "planned": "Заплановано", + "paused": "Призупинено", "search": { "label": "Пошук", "placeholder": "Введіть пошуковий запит", "no_matches_found": "Немає збігів", - "no_matching_results": "Немає відповідних результатів" + "no_matching_results": "Немає відповідних результатів", + "min_chars": "Введіть щонайменше {count} символів для пошуку", + "error": "Помилка завантаження результатів пошуку", + "no_results": { + "title": "Немає відповідних результатів", + "description": "Видаліть критерії пошуку, щоб побачити всі результати" + } }, "actions": { "edit": "Редагувати", @@ -584,7 +617,9 @@ "clear_sorting": "Скинути сортування", "show_weekends": "Показати вихідні", "enable": "Увімкнути", - "disable": "Вимкнути" + "disable": "Вимкнути", + "copy_markdown": "Скопіювати markdown", + "reply": "Відповісти" }, "name": "Назва", "discard": "Скасувати", @@ -597,6 +632,7 @@ "disabled": "Вимкнено", "mandate": "Мандат", "mandatory": "Обов'язково", + "global": "Глобальна", "yes": "Так", "no": "Ні", "please_wait": "Будь ласка, зачекайте", @@ -606,6 +642,7 @@ "or": "або", "next": "Далі", "back": "Назад", + "retry": "Повторити", "cancelling": "Скасування", "configuring": "Налаштування", "clear": "Очистити", @@ -660,31 +697,27 @@ "deactivated_user": "Деактивований користувач", "apply": "Застосувати", "applying": "Застосовується", - "users": "Користувачі", - "admins": "Адміністратори", - "guests": "Гості", - "on_track": "У межах графіку", - "off_track": "Поза графіком", - "at_risk": "Під загрозою", - "timeline": "Хронологія", - "completion": "Завершення", - "upcoming": "Майбутнє", - "completed": "Завершено", - "in_progress": "В процесі", - "planned": "Заплановано", - "paused": "Призупинено", + "overview": "Оверв'ю", "no_of": "Кількість {entity}", "resolved": "Вирішено", + "get_started": "Почати", "worklogs": "Ворклоги", "project_updates": "Проджект Апдейти", - "overview": "Оверв'ю", "workflows": "Воркфлоус", "templates": "Темплейти", + "business": "Бізнес", "members_and_teamspaces": "Члени та командних просторів", + "recurring_work_items": "Повторювані робочі одиниці", + "milestones": "Віхи", "open_in_full_screen": "Відкрити {page} на повний екран", "details": "Деталі", "project_structure": "Структура проєкту", - "custom_properties": "Користувацькі властивості" + "custom_properties": "Користувацькі властивості", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Вісь X", @@ -790,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane не запустився. Це може бути через те, що один або декілька сервісів Plane не змогли запуститися.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Виберіть View Logs з setup.sh та логів Docker, щоб переконатися." }, + "customize_navigation": "Налаштувати навігацію", + "personal": "Особисте", + "accordion_navigation_control": "Акордеонна навігація бічної панелі", + "horizontal_navigation_bar": "Вкладкова навігація", + "show_limited_projects_on_sidebar": "Показувати обмежену кількість проєктів на бічній панелі", + "enter_number_of_projects": "Введіть кількість проєктів", + "pin": "Закріпити", + "unpin": "Відкріпити", "workspace_dashboards": "Дешборди", "pi_chat": "ШІ Чат", "in_app": "В-апп", "forms": "Форми", - "choose_workspace_for_integration": "Виберіть робочий простір для підключення цієї програми", - "integrations_description": "Програми, які працюють з Plane, повинні бути підключені до робочого простору, де ви є адміністратором.", - "create_a_new_workspace": "Створити новий робочий простір", - "learn_more_about_workspaces": "Дізнатися більше про робочі простори", - "no_workspaces_to_connect": "Немає робочих просторів для підключення", - "no_workspaces_to_connect_description": "Ви повинні створити робочий простір, щоб підключити інтеграції та шаблони", + "milestones": "Віхи", + "milestones_description": "Віхи забезпечують шар для узгодження робочих одиниць до спільних дат завершення.", "file_upload": { "upload_text": "Натисніть тут, щоб завантажити файл", "drag_drop_text": "Перетягніть", "processing": "Обробка", - "invalid": "Недійсний тип файлу", + "invalid_file_type": "Недійсний тип файлу", "missing_fields": "Відсутні поля", "success": "{fileName} Завантажено!" }, - "project_name_cannot_contain_special_characters": "Назва проєкту не може містити спеціальні символи.", "date": "Дата", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/ua/editor.json b/packages/i18n/src/locales/ua/editor.json index ef2b63bbf56..e688e337966 100644 --- a/packages/i18n/src/locales/ua/editor.json +++ b/packages/i18n/src/locales/ua/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Будь ласка, введіть дійсну URL-адресу." } + }, + "ai_block": { + "content": { + "placeholder": "Опишіть вміст цього блоку", + "generated_here": "Ваш ШІ-контент буде згенеровано тут" + }, + "block_types": { + "placeholder": "Виберіть тип блоку", + "summarize_page": "Підсумувати сторінку", + "custom_prompt": "Користувацький промпт" + }, + "actions": { + "discard": "Відхилити", + "generate": "Згенерувати", + "generating": "Генерація", + "rewriting": "Переписування", + "rewrite": "Переписати", + "use_this": "Використати це", + "refine": "Уточнити" + } } } diff --git a/packages/i18n/src/locales/ua/empty-state.json b/packages/i18n/src/locales/ua/empty-state.json index b0fd2c45b56..a1672ce5006 100644 --- a/packages/i18n/src/locales/ua/empty-state.json +++ b/packages/i18n/src/locales/ua/empty-state.json @@ -249,10 +249,22 @@ "title": "Відстежуйте табелі обліку часу для всіх учасників", "description": "Реєструйте час на робочих елементах для перегляду детальних табелів для будь-якого члена команди по проєктах." }, + "group_syncing": { + "title": "Ще немає зіставлень груп" + }, "template_setting": { "title": "Ще немає шаблонів", "description": "Скоротіть час налаштування, створюючи шаблони для проєктів, робочих елементів та сторінок — і починайте нову роботу за секунди.", "cta_primary": "Створити шаблон" + }, + "workflows": { + "title": "Ще немає воркфлоу", + "description": "Створюйте воркфлоу для керування перебігом ваших робочих елементів.", + "cta_primary": "Додати новий воркфлоу", + "states": { + "title": "Додати стани", + "description": "Виберіть стани, через які проходить робочий елемент." + } } } } diff --git a/packages/i18n/src/locales/ua/integration.json b/packages/i18n/src/locales/ua/integration.json index d1ce6ee37e9..df88777e3a8 100644 --- a/packages/i18n/src/locales/ua/integration.json +++ b/packages/i18n/src/locales/ua/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Помилка сервера при завантаженні станів" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Підключайте та синхронізуйте ваші репозиторії Bitbucket Data Center з Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Перевірка токенів зовнішніх IdP для доступу до API.", @@ -302,6 +306,7 @@ "generic_error": "Під час обробки вашого запиту сталася неочікувана помилка", "connection_not_found": "Запитане підключення не знайдено", "multiple_connections_found": "Знайдено кілька підключень, коли очікувалося лише одне", + "cannot_create_multiple_connections": "Ви вже підключили вашу організацію до робочого простору. Будь ласка, відключіть існуюче підключення перед створенням нового.", "installation_not_found": "Запитана інсталяція не знайдена", "user_not_found": "Запитаний користувач не знайдений", "error_fetching_token": "Не вдалося отримати токен аутентифікації", @@ -315,6 +320,7 @@ "pulling": "Отримання", "timed_out": "Час вийшов", "pulled": "Отримано", + "progressing": "Виконується", "transforming": "Трансформація", "transformed": "Трансформовано", "pushing": "Надсилання", diff --git a/packages/i18n/src/locales/ua/module.json b/packages/i18n/src/locales/ua/module.json index 9eddd202245..1619776a5a4 100644 --- a/packages/i18n/src/locales/ua/module.json +++ b/packages/i18n/src/locales/ua/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {Модуль} few {Модулі} other {Модулів}}", - "no_module": "Немає модуля" + "no_module": "Немає модуля", + "select": "Додати модулі" } } diff --git a/packages/i18n/src/locales/ua/navigation.json b/packages/i18n/src/locales/ua/navigation.json index 9f85253b91b..742ef12d7e7 100644 --- a/packages/i18n/src/locales/ua/navigation.json +++ b/packages/i18n/src/locales/ua/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Немає результатів" + } + } + }, "sidebar": { + "stickies": "Стікі", + "your_work": "Ваша робота", "projects": "Проєкти", "pages": "Сторінки", "new_work_item": "Нова робоча одиниця", "home": "Головна", - "your_work": "Ваша робота", "inbox": "Вхідні", "workspace": "Робочий простір", "views": "Подання", @@ -21,14 +29,6 @@ "epics": "Епікс", "upgrade_plan": "Апгрейд план", "plane_pro": "Плейн Про", - "business": "Бізнес", - "recurring_work_items": "Повторювані робочі елементи" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Немає результатів" - } - } + "business": "Бізнес" } } diff --git a/packages/i18n/src/locales/ua/page.json b/packages/i18n/src/locales/ua/page.json index 88d6e2872e6..23bc52b13c1 100644 --- a/packages/i18n/src/locales/ua/page.json +++ b/packages/i18n/src/locales/ua/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Сторінки з'єднати", - "show_wiki_pages": "Показати сторінки Wiki", - "link_pages_to": "Сторінки з'єднати до", - "linked_pages": "Пов'язані сторінки", - "no_description": "Ця сторінка порожня. Напишіть щось і подивіться це тут як цей замісник", - "toasts": { - "link": { - "success": { - "title": "Сторінки оновлені", - "message": "Сторінки були успішно оновлені" - }, - "error": { - "title": "Сторінки не оновлені", - "message": "Сторінки не оновлені" - } - }, - "remove": { - "success": { - "title": "Сторінка видалена", - "message": "Сторінка була успішно видалена" - }, - "error": { - "title": "Сторінка не видалена", - "message": "Сторінка не видалена" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Відсутні зображення", "description": "Додайте зображення, щоб побачити їх тут." } + }, + "comments": { + "label": "Коментарі", + "empty_state": { + "title": "Немає коментарів", + "description": "Додайте коментарі, щоб побачити їх тут." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Назва стікі не може перевищувати 100 символів.", + "already_exists": "Вже існує стікі без опису" + }, + "created": { + "title": "Стікі створено", + "message": "Стікі успішно створено" + }, + "not_created": { + "title": "Стікі не створено", + "message": "Не вдалося створити стікі" + }, + "updated": { + "title": "Стікі оновлено", + "message": "Стікі успішно оновлено" + }, + "not_updated": { + "title": "Стікі не оновлено", + "message": "Не вдалося оновити стікі" + }, + "removed": { + "title": "Стікі видалено", + "message": "Стікі успішно видалено" + }, + "not_removed": { + "title": "Стікі не видалено", + "message": "Не вдалося видалити стікі" } }, "open_button": "Відкрити панель навігації", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Перемістити", + "loading": "Переміщення" + }, + "cannot_move_to_teamspace": "Приватні та спільні сторінки не можна перемістити до командного простору.", "placeholders": { + "workspace_to_all": "Шукати проєкти та командні простори", + "workspace_to_project": "Шукати проєкти", + "project_to_all": "Шукати проєкти та командні простори", + "project_to_project": "Шукати проєкти", "project_to_all_with_wiki": "Шукати колекції wiki, проєкти та командні простори", "project_to_project_with_wiki": "Шукати колекції wiki та проєкти" }, "toasts": { + "success": { + "title": "Успіх!", + "message": "Сторінку успішно переміщено." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося перемістити сторінку. Спробуйте ще раз пізніше." + }, "collection_error": { "title": "Переміщено до wiki", "message": "Сторінку було переміщено до wiki, але не вдалося додати її до вибраної колекції. Вона залишається в General." diff --git a/packages/i18n/src/locales/ua/project-settings.json b/packages/i18n/src/locales/ua/project-settings.json index 6bc7d032d1b..987be6fa7f7 100644 --- a/packages/i18n/src/locales/ua/project-settings.json +++ b/packages/i18n/src/locales/ua/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Учасники", "project_lead": "Керівник проєкту", + "project_lead_description": "Виберіть керівника проєкту.", "default_assignee": "Типовий виконавець", + "default_assignee_description": "Виберіть виконавця за замовчуванням для проєкту.", + "project_subscribers": "Підписники проєкту", + "project_subscribers_description": "Виберіть учасників, які отримуватимуть сповіщення для цього проєкту.", "guest_super_permissions": { "title": "Надати гостям доступ до всіх одиниць:", "sub_heading": "Гості бачитимуть усі одиниці у проєкті." @@ -30,13 +34,11 @@ "title": "Запросити учасників", "sub_heading": "Запросіть учасників до проєкту.", "select_co_worker": "Вибрати колегу" - }, - "project_lead_description": "Виберіть керівника проєкту.", - "default_assignee_description": "Виберіть виконавця за замовчуванням для проєкту.", - "project_subscribers": "Підписники проєкту", - "project_subscribers_description": "Виберіть учасників, які отримуватимуть сповіщення для цього проєкту." + } }, "states": { + "heading": "Стани", + "description": "Визначайте та налаштовуйте стани робочого процесу для відстеження прогресу ваших робочих одиниць.", "describe_this_state_for_your_members": "Опишіть цей стан для учасників.", "empty_state": { "title": "Немає станів у групі {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Мітки", + "description": "Створюйте користувацькі мітки для категоризації та організації ваших робочих одиниць", "label_title": "Назва мітки", "label_title_is_required": "Назва мітки є обов'язковою", "label_max_char": "Назва мітки не може перевищувати 255 символів", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Оцінки", + "description": "Вони допомагають вам повідомляти про складність та навантаження команди.", "label": "Оцінки", "title": "Увімкнути оцінки для мого проєкту", - "description": "Вони допомагають вам повідомляти про складність та навантаження команди.", + "enable_description": "Вони допомагають вам повідомляти про складність та навантаження команди.", "no_estimate": "Без оцінки", "new": "Нова система оцінок", "create": { @@ -112,6 +118,16 @@ "title": "Не вдалося переупорядкувати оцінки", "message": "Ми не змогли переупорядкувати оцінки, спробуйте ще раз" } + }, + "switch": { + "success": { + "title": "Систему оцінок створено", + "message": "Успішно створено та увімкнено" + }, + "error": { + "title": "Помилка", + "message": "Щось пішло не так" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "Автоматизація", + "heading": "Автоматизації", + "description": "Налаштовуйте автоматичні дії, щоб спростити управління робочим процесом та зменшити ручну роботу.", "auto-archive": { "title": "Автоматично архівувати закриті одиниці", "description": "Plane архівуватиме завершені або скасовані одиниці.", @@ -194,90 +212,116 @@ "description": "Налаштуйте GitHub та інші інтеграції для синхронізації ваших проджектних робочих елементів." } }, - "cycles": { - "auto_schedule": { - "heading": "Автоматичне планування циклів", - "description": "Підтримуйте рух циклів без ручного налаштування.", - "tooltip": "Автоматично створюйте нові цикли на основі обраного розкладу.", - "edit_button": "Редагувати", - "form": { - "cycle_title": { - "label": "Назва циклу", - "placeholder": "Назва", - "tooltip": "До назви будуть додані номери для наступних циклів. Наприклад: Дизайн - 1/2/3", - "validation": { - "required": "Назва циклу є обов'язковою", - "max_length": "Назва не повинна перевищувати 255 символів" - } - }, - "cycle_duration": { - "label": "Тривалість циклу", - "unit": "Тижні", - "validation": { - "required": "Тривалість циклу є обов'язковою", - "min": "Тривалість циклу повинна бути щонайменше 1 тиждень", - "max": "Тривалість циклу не може перевищувати 30 тижнів", - "positive": "Тривалість циклу має бути додатною" - } - }, - "cooldown_period": { - "label": "Період охолодження", - "unit": "днів", - "tooltip": "Пауза між циклами перед початком наступного.", - "validation": { - "required": "Період охолодження є обов'язковим", - "negative": "Період охолодження не може бути від'ємним" - } - }, - "start_date": { - "label": "День початку циклу", - "validation": { - "required": "Дата початку є обов'язковою", - "past": "Дата початку не може бути в минулому" - } + "workflows": { + "toggle": { + "title": "Увімкнути воркфлоу", + "description": "Налаштуйте воркфлоу для керування рухом робочих одиниць", + "no_states_tooltip": "Стани не додано до воркфлоу.", + "no_work_item_types_tooltip": "Типи робочих одиниць не додано до воркфлоу.", + "no_states_or_work_item_types_tooltip": "Стани або типи робочих одиниць не додано до воркфлоу.", + "toast": { + "loading": { + "enabling": "Увімкнення воркфлоу", + "disabling": "Вимкнення воркфлоу" }, - "number_of_cycles": { - "label": "Кількість майбутніх циклів", - "validation": { - "required": "Кількість циклів є обов'язковою", - "min": "Потрібен принаймні 1 цикл", - "max": "Неможливо запланувати більше 3 циклів" - } + "success": { + "title": "Успіх!", + "message": "Воркфлоу успішно увімкнено." }, - "auto_rollover": { - "label": "Автоматичне перенесення робочих елементів", - "tooltip": "У день завершення циклу перемістити всі незавершені робочі елементи в наступний цикл." + "error": { + "title": "Помилка!", + "message": "Не вдалося увімкнути воркфлоу. Спробуйте ще раз." + } + } + }, + "heading": "Воркфлоу", + "description": "Автоматизуйте переходи робочих одиниць і встановлюйте правила, які визначають, як завдання рухаються у конвеєрі вашого проєкту.", + "add_button": "Додати новий воркфлоу", + "search": "Шукати воркфлоу", + "detail": { + "define": "Визначити воркфлоу", + "add_states": "Додати стани", + "unmapped_states": { + "title": "Виявлено незіставлені стани", + "description": "Деякі робочі одиниці вибраних типів наразі перебувають у станах, яких немає в цьому воркфлоу.", + "note": "Якщо ви увімкнете цей воркфлоу, такі елементи автоматично перейдуть у початковий стан цього воркфлоу.", + "label": "Відсутні стани", + "tooltip": "Деякі робочі одиниці перебувають у станах, які не зіставлені з цим воркфлоу. Відкрийте воркфлоу для перегляду." + } + }, + "select_states": { + "empty_state": { + "title": "Усі стани використовуються", + "description": "Усі визначені стани цього проєкту вже присутні у вашому поточному воркфлоу." + } + }, + "default_footer": { + "fallback_message": "Цей воркфлоу застосовується до будь-якого типу робочої одиниці, який не прив'язаний до воркфлоу." + }, + "create": { + "heading": "Створити новий воркфлоу", + "name": { + "placeholder": "Введіть унікальну назву", + "validation": { + "max_length": "Назва має бути коротшою за 255 символів", + "required": "Назва обов'язкова", + "invalid": "Назва може містити лише літери, цифри, пробіли, дефіси й апострофи" } }, - "toast": { - "toggle": { - "loading_enable": "Увімкнення автоматичного планування циклів", - "loading_disable": "Вимкнення автоматичного планування циклів", - "success": { - "title": "Успішно!", - "message": "Автоматичне планування циклів успішно перемкнуто." - }, - "error": { - "title": "Помилка!", - "message": "Не вдалося перемкнути автоматичне планування циклів." - } - }, - "save": { - "loading": "Збереження конфігурації автоматичного планування циклів", - "success": { - "title": "Успішно!", - "message_create": "Конфігурацію автоматичного планування циклів успішно збережено.", - "message_update": "Конфігурацію автоматичного планування циклів успішно оновлено." - }, - "error": { - "title": "Помилка!", - "message_create": "Не вдалося зберегти конфігурацію автоматичного планування циклів.", - "message_update": "Не вдалося оновити конфігурацію автоматичного планування циклів." - } + "description": { + "placeholder": "Додайте короткий опис", + "validation": { + "invalid": "Опис може містити лише літери, цифри, пробіли, дефіси й апострофи" } + }, + "work_item_type": { + "label": "Тип робочої одиниці" + }, + "success": { + "title": "Успіх!", + "message": "Воркфлоу успішно створено." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося створити воркфлоу. Спробуйте ще раз." + } + }, + "update": { + "success": { + "title": "Успіх!", + "message": "Воркфлоу успішно оновлено." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося оновити воркфлоу. Спробуйте ще раз." + } + }, + "delete": { + "loading": "Видалення воркфлоу", + "success": { + "title": "Успіх!", + "message": "Воркфлоу успішно видалено." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося видалити воркфлоу. Спробуйте ще раз." + } + }, + "add_states": { + "success": { + "title": "Успіх!", + "message": "Стани успішно додано." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося додати стани. Спробуйте ще раз." } } }, + "work_item_types": { + "heading": "Типи робочих одиниць", + "description": "Створюйте та налаштовуйте різні типи робочих одиниць з унікальними властивостями" + }, "features": { "cycles": { "title": "Цикли", @@ -379,6 +423,103 @@ "description": "Віхи забезпечують рівень для вирівнювання робочих елементів до спільних дат завершення.", "toggle_title": "Увімкнути віхи", "toggle_description": "Організуйте робочі елементи за термінами віх." + }, + "toasts": { + "loading": "Оновлення функції проєкту...", + "success": "Функцію проєкту успішно оновлено.", + "error": "Щось пішло не так під час оновлення функції проєкту. Спробуйте ще раз." + } + }, + "project_updates": { + "heading": "Оновлення проєкту", + "description": "Консолідоване відстеження та моніторинг прогресу для цього проєкту" + }, + "templates": { + "heading": "Шаблони", + "description": "Заощаджуйте 80% часу, витраченого на створення проєктів, робочих одиниць і сторінок, коли ви використовуєте шаблони." + }, + "cycles": { + "auto_schedule": { + "heading": "Автоматичне планування циклів", + "description": "Підтримуйте рух циклів без ручного налаштування.", + "tooltip": "Автоматично створюйте нові цикли на основі обраного розкладу.", + "edit_button": "Редагувати", + "form": { + "cycle_title": { + "label": "Назва циклу", + "placeholder": "Назва", + "tooltip": "До назви будуть додані номери для наступних циклів. Наприклад: Дизайн - 1/2/3", + "validation": { + "required": "Назва циклу є обов'язковою", + "max_length": "Назва не повинна перевищувати 255 символів" + } + }, + "cycle_duration": { + "label": "Тривалість циклу", + "unit": "Тижні", + "validation": { + "required": "Тривалість циклу є обов'язковою", + "min": "Тривалість циклу повинна бути щонайменше 1 тиждень", + "max": "Тривалість циклу не може перевищувати 30 тижнів", + "positive": "Тривалість циклу має бути додатною" + } + }, + "cooldown_period": { + "label": "Період охолодження", + "unit": "днів", + "tooltip": "Пауза між циклами перед початком наступного.", + "validation": { + "required": "Період охолодження є обов'язковим", + "negative": "Період охолодження не може бути від'ємним" + } + }, + "start_date": { + "label": "День початку циклу", + "validation": { + "required": "Дата початку є обов'язковою", + "past": "Дата початку не може бути в минулому" + } + }, + "number_of_cycles": { + "label": "Кількість майбутніх циклів", + "validation": { + "required": "Кількість циклів є обов'язковою", + "min": "Потрібен принаймні 1 цикл", + "max": "Неможливо запланувати більше 3 циклів" + } + }, + "auto_rollover": { + "label": "Автоматичне перенесення робочих елементів", + "tooltip": "У день завершення циклу перемістити всі незавершені робочі елементи в наступний цикл." + } + }, + "toast": { + "toggle": { + "loading_enable": "Увімкнення автоматичного планування циклів", + "loading_disable": "Вимкнення автоматичного планування циклів", + "success": { + "title": "Успішно!", + "message": "Автоматичне планування циклів успішно перемкнуто." + }, + "error": { + "title": "Помилка!", + "message": "Не вдалося перемкнути автоматичне планування циклів." + } + }, + "save": { + "loading": "Збереження конфігурації автоматичного планування циклів", + "success": { + "title": "Успішно!", + "message_create": "Конфігурацію автоматичного планування циклів успішно збережено.", + "message_update": "Конфігурацію автоматичного планування циклів успішно оновлено." + }, + "error": { + "title": "Помилка!", + "message_create": "Не вдалося зберегти конфігурацію автоматичного планування циклів.", + "message_update": "Не вдалося оновити конфігурацію автоматичного планування циклів." + } + } + } } } } diff --git a/packages/i18n/src/locales/ua/project.json b/packages/i18n/src/locales/ua/project.json index c8968fe4f11..7cf67135f74 100644 --- a/packages/i18n/src/locales/ua/project.json +++ b/packages/i18n/src/locales/ua/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Зберігайте фільтри як подання.", + "description": "Подання — це збережені фільтри для швидкого доступу. Діліться ними з командою.", + "primary_button": { + "text": "Створити перше подання", + "comic": { + "title": "Подання працюють з властивостями одиниць.", + "description": "Створіть подання з потрібними фільтрами." + } + }, + "filter": { + "title": "Немає відповідних подань", + "description": "Жодне подання не відповідає критеріям пошуку.\n Натомість створіть нове подання." + } + }, + "no_archived_issues": { + "title": "Поки що немає заархівованих робочих одиниць", + "description": "Вручну або через автоматизацію ви можете архівувати робочі одиниці, які завершено або скасовано. Знайдіть їх тут після архівування.", + "primary_button": { + "text": "Налаштувати автоматизацію" + } + }, + "issues_empty_filter": { + "title": "Не знайдено робочих одиниць за застосованими фільтрами", + "secondary_button": { + "text": "Очистити всі фільтри" + } + }, + "public": { + "title": "Поки що немає публічних сторінок", + "description": "Переглядайте сторінки, якими поділилися з усіма у вашому проєкті, просто тут.", + "primary_button": { + "text": "Створити першу сторінку" + } + }, + "archived": { + "title": "Поки що немає заархівованих сторінок", + "description": "Архівуйте сторінки, які не у вас на контролі. Отримайте доступ до них тут, коли знадобиться." + }, + "shared": { + "title": "Поки що немає спільних сторінок", + "description": "Сторінки, якими з вами поділилися, з'являться тут." + } + }, + "delete_view": { + "title": "Ви впевнені, що хочете видалити це подання?", + "content": "Якщо ви підтвердите, всі параметри сортування, фільтрації та відображення + макет, який ви обрали для цього подання, будуть безповоротно видалені без можливості відновлення." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Зберігайте фільтри як подання.", - "description": "Подання — це збережені фільтри для швидкого доступу. Діліться ними з командою.", - "primary_button": { - "text": "Створити перше подання", - "comic": { - "title": "Подання працюють з властивостями одиниць.", - "description": "Створіть подання з потрібними фільтрами." - } - } - }, - "filter": { - "title": "Немає подань за цим фільтром", - "description": "Створіть нове подання." - } - }, - "delete_view": { - "title": "Ви впевнені, що хочете видалити це подання?", - "content": "Якщо ви підтвердите, всі параметри сортування, фільтрації та відображення + макет, який ви обрали для цього подання, будуть безповоротно видалені без можливості відновлення." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Вручну" } }, + "project_members": { + "full_name": "Повне ім'я", + "display_name": "Відображуване ім'я", + "email": "Електронна пошта", + "joining_date": "Дата приєднання", + "role": "Роль" + }, "project": { "members_import": { "title": "Імпорт учасників з CSV", diff --git a/packages/i18n/src/locales/ua/settings.json b/packages/i18n/src/locales/ua/settings.json index 020469af923..313da74f6bc 100644 --- a/packages/i18n/src/locales/ua/settings.json +++ b/packages/i18n/src/locales/ua/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Налаштування", + "description": "Налаштуйте роботу застосунку так, як вам зручно" + }, "notifications": { + "heading": "Сповіщення електронною поштою", + "description": "Будьте в курсі робочих одиниць, на які ви підписані. Увімкніть, щоб отримувати сповіщення.", "select_default_view": "Вибрати подання за замовчуванням", "compact": "Компактний", "full": "Повний екран" + }, + "security": { + "heading": "Безпека" + }, + "api_tokens": { + "title": "Особисті токени доступу", + "description": "Генеруйте безпечні API-токени для інтеграції ваших даних із зовнішніми системами та застосунками." + }, + "activity": { + "heading": "Активність", + "description": "Відстежуйте свої нещодавні дії та зміни в усіх проєктах і робочих одиницях." + }, + "connections": { + "title": "Коннекшнс", + "heading": "Коннекшнс", + "description": "Керуйте налаштуваннями підключень вашого робочого простору." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Профіль", "security": "Безпека", "activity": "Активність", - "appearance": "Зовнішній вигляд", + "preferences": "Налаштування", "notifications": "Сповіщення", + "api-tokens": "Особисті токени доступу", "connections": "Коннекшнс" }, "tabs": { diff --git a/packages/i18n/src/locales/ua/template.json b/packages/i18n/src/locales/ua/template.json index cc197b33f6e..bea8fa6bd25 100644 --- a/packages/i18n/src/locales/ua/template.json +++ b/packages/i18n/src/locales/ua/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Темплейти", "description": "Заощаджуйте 80% часу, витраченого на створення проджектів, робочих елементів та пейджів, коли використовуєте темплейти.", + "new_project_template": "Новий темплейт проєкту", + "new_work_item_template": "Новий темплейт робочої одиниці", + "new_page_template": "Новий темплейт сторінки", "options": { "project": { "label": "Проджект темплейти" @@ -157,6 +160,14 @@ "required": "Потрібно хоча б одне ключове слово" } }, + "website": { + "label": "URL вебсайту", + "placeholder": "https://plane.so", + "validation": { + "invalid": "Некоректний URL", + "maxLength": "URL має бути менше 800 символів" + } + }, "company_name": { "label": "Назва компанії", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Некоректна email адреса", - "required": "Email підтримки обов'язковий", "maxLength": "Email підтримки має бути менше 255 символів" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " Поки що немає лейблів. Створіть лейбли, щоб допомогти організувати та фільтрувати робочі елементи у вашому проджекті." }, + "no_modules": { + "description": "Ще немає модулів. Організуйте роботу в підпроєкти з окремими керівниками та виконавцями." + }, "no_work_items": { "description": "Немає робочих елементів. Додайте один, щоб краще структурувати свою роботу." }, diff --git a/packages/i18n/src/locales/ua/tour.json b/packages/i18n/src/locales/ua/tour.json index 2447950f0f6..7dbec4359cb 100644 --- a/packages/i18n/src/locales/ua/tour.json +++ b/packages/i18n/src/locales/ua/tour.json @@ -110,6 +110,12 @@ "description": "Робочу задачу можна відкласти, щоб переглянути її пізніше. Вона буде переміщена в кінець вашого списку відкритих запитів." } }, + "mcp_connectors": { + "step_zero": { + "title": "Досить перемикати вкладки. Підключіть ваш світ.", + "description": "Підключіть GitHub, Slack, щоб відстежувати PR і підсумовувати чати прямо в Plane AI." + } + }, "navigation": { "modal": { "title": "Навігація, переосмислена", diff --git a/packages/i18n/src/locales/ua/update.json b/packages/i18n/src/locales/ua/update.json index 46573a9daf4..1732a95d027 100644 --- a/packages/i18n/src/locales/ua/update.json +++ b/packages/i18n/src/locales/ua/update.json @@ -1,47 +1,15 @@ { "updates": { - "add_update": "Додати оновлення", - "add_update_placeholder": "Додайте ваше оновлення тут", - "empty": { - "title": "Ще немає оновлень", - "description": "Ви можете тут переглядати оновлення." - }, - "delete": { - "title": "Видалити оновлення", - "confirmation": "Ви впевнені, що хочете видалити це оновлення? Це дія є незворотним.", - "success": { - "title": "Оновлення видалено", - "message": "Оновлення було успішно видалено." - }, - "error": { - "title": "Оновлення не видалено", - "message": "Оновлення не видалено." - } - }, - "update": { - "success": { - "title": "Оновлення оновлено", - "message": "Оновлення було успішно оновлено." - }, - "error": { - "title": "Оновлення не оновлено", - "message": "Оновлення не оновлено." - } - }, "progress": { "title": "Прогрес", "since_last_update": "Від останнього оновлення", "comments": "{count, plural, one{# коментар} few{# коментарі} other{# коментарів}}" }, - "create": { - "success": { - "title": "Оновлення створено", - "message": "Оновлення було успішно створено." - }, - "error": { - "title": "Оновлення не створено", - "message": "Оновлення не створено." - } + "add_update": "Додати оновлення", + "add_update_placeholder": "Додайте ваше оновлення тут", + "empty": { + "title": "Ще немає оновлень", + "description": "Ви можете тут переглядати оновлення." }, "reaction": { "create": { @@ -64,6 +32,38 @@ "message": "Реакцію не видалено." } } + }, + "create": { + "success": { + "title": "Оновлення створено", + "message": "Оновлення було успішно створено." + }, + "error": { + "title": "Оновлення не створено", + "message": "Оновлення не створено." + } + }, + "delete": { + "title": "Видалити оновлення", + "confirmation": "Ви впевнені, що хочете видалити це оновлення? Це дія є незворотним.", + "success": { + "title": "Оновлення видалено", + "message": "Оновлення було успішно видалено." + }, + "error": { + "title": "Оновлення не видалено", + "message": "Оновлення не видалено." + } + }, + "update": { + "success": { + "title": "Оновлення оновлено", + "message": "Оновлення було успішно оновлено." + }, + "error": { + "title": "Оновлення не оновлено", + "message": "Оновлення не оновлено." + } } } } diff --git a/packages/i18n/src/locales/ua/wiki.json b/packages/i18n/src/locales/ua/wiki.json index 505b3cbea51..11cf166ed70 100644 --- a/packages/i18n/src/locales/ua/wiki.json +++ b/packages/i18n/src/locales/ua/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Не вдалося створити сторінку або додати її до колекції. Спробуйте ще раз.", "collection_link_copied": "Посилання на колекцію скопійовано в буфер обміну." } + }, + "wiki": { + "upgrade_flow": { + "title": "Оновіться, щоб розблокувати Wiki", + "description": "Розблокуйте публічні сторінки, історію версій, спільні сторінки, спільне редагування в реальному часі та сторінки робочого простору для wiki, корпоративних документів і баз знань з Plane Pro.", + "upgrade_button": { + "text": "Оновити" + }, + "learn_more_button": { + "text": "Дізнатися більше" + }, + "download_button": { + "text": "Завантажити дані", + "loading": "Завантаження" + }, + "tabs": { + "nested_pages": "Вкладені сторінки", + "add_embeds": "Додати вбудовування", + "publish_pages": "Опублікувати сторінки", + "comments": "Коментарі" + } + }, + "nested_pages_download_banner": { + "title": "Вкладені сторінки вимагають платного плану. Оновіться, щоб розблокувати." + } } } diff --git a/packages/i18n/src/locales/ua/work-item-type.json b/packages/i18n/src/locales/ua/work-item-type.json index 14d573477d1..6e037feace1 100644 --- a/packages/i18n/src/locales/ua/work-item-type.json +++ b/packages/i18n/src/locales/ua/work-item-type.json @@ -3,11 +3,25 @@ "label": "Типи Робочих Елементів", "label_lowercase": "типи робочих елементів", "settings": { - "title": "Типи Робочих Елементів", + "description": "Налаштовуйте та додавайте власні властивості, щоб адаптувати їх до потреб вашої команди.", + "cant_delete_default_message": "Неможливо видалити цей тип робочого елемента, оскільки він встановлений як тип за замовчуванням для цього проджекту.", + "set_as_default": "Встановити за замовчуванням", + "cant_set_default_inactive_message": "Активуйте цей тип перед встановленням за замовчуванням", + "set_default_confirmation": { + "title": "Встановити як тип робочого елемента за замовчуванням", + "description": "Встановлення {name} за замовчуванням імпортує його в усі проекти цього робочого простору. Усі нові робочі елементи використовуватимуть цей тип за замовчуванням.", + "confirm_button": "Встановити за замовчуванням" + }, "properties": { "title": "Кастомні проперті", + "description": "Створюйте та налаштовуйте властивості.", "tooltip": "Кожен тип робочого елемента постачається з набором проперті за замовчуванням, як-от Заголовок, Опис, Призначений, Стан, Пріоритет, Дата початку, Дата завершення, Модуль, Цикл тощо. Ви також можете налаштувати та додати власні проперті, щоб адаптувати їх до потреб вашої команди.", "add_button": "Додати нове проперті", + "project": { + "add_button": { + "import_from_workspace": "Імпортувати з робочого простору" + } + }, "dropdown": { "label": "Тип проперті", "placeholder": "Виберіть тип" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Створити нову користувацьку властивість", + "update": "Оновити користувацьку властивість" + }, "form": { "display_name": { "placeholder": "Заголовок" @@ -213,9 +231,50 @@ "description": "Нові проперті, які ви додасте для цього типу робочого елемента, будуть показані тут." } }, + "types": { + "title": "Типи", + "description": "Створюйте та налаштовуйте типи робочих одиниць із властивостями.", + "sort_options": { + "project_count": "Кількість проєктів" + }, + "filter_options": { + "show_active": "Показати активні", + "show_inactive": "Показати неактивні" + }, + "project": { + "add_button": { + "create_new": "Створити новий", + "import_from_workspace": "Імпортувати з робочого простору" + }, + "banner": { + "with_access": "Увімкніть типи робочих одиниць, щоб імпортувати типи з рівня робочого простору", + "without_access": "Типи робочих одиниць вимкнено. Зверніться до адміністратора робочого простору, щоб увімкнути їх у налаштуваннях робочого простору." + } + } + }, + "linked_properties": { + "title": "Користувацькі властивості", + "add_button": "Додати властивості", + "modal": { + "title": "Додати властивості", + "empty": { + "title": "Немає доступних властивостей", + "description": "Усі властивості вже прив'язано до цього типу." + } + }, + "unlink_confirmation": { + "title": "Від'єднати властивість", + "description": "Від'єднання цієї властивості назавжди видалить усі її значення для кожної робочої одиниці, яка використовує цей тип. Цю дію неможливо скасувати.", + "input_label": "Введіть", + "input_label_suffix": "для продовження:", + "confirm": "Від'єднати властивість", + "loading": "Від'єднання" + } + }, "item_delete_confirmation": { "title": "Видалити цей тип", "description": "Видалення типів може призвести до втрати наявних даних.", + "can_disable_warning": "Ви хочете замість цього вимкнути тип?", "primary_button": "Так, видалити", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Неможливо видалити тип робочого елемента за замовчуванням", "cannot_delete_work_item_type_with_associated_work_items": "Неможливо видалити тип робочого елемента з пов'язаними робочими елементами" - }, - "can_disable_warning": "Ви хочете замість цього вимкнути тип?" - }, - "cant_delete_default_message": "Неможливо видалити цей тип робочого елемента, оскільки він встановлений як тип за замовчуванням для цього проджекту.", - "set_as_default": "Встановити за замовчуванням", - "cant_set_default_inactive_message": "Активуйте цей тип перед встановленням за замовчуванням", - "set_default_confirmation": { - "title": "Встановити як тип робочого елемента за замовчуванням", - "description": "Встановлення {name} за замовчуванням імпортує його в усі проекти цього робочого простору. Усі нові робочі елементи використовуватимуть цей тип за замовчуванням.", - "confirm_button": "Встановити за замовчуванням" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Помилка!", "message": { + "default": "Не вдалося створити тип робочого елемента. Спробуйте ще раз!", "conflict": "Тип {name} вже існує. Виберіть іншу назву." } } @@ -269,6 +320,7 @@ "error": { "title": "Помилка!", "message": { + "default": "Не вдалося оновити тип робочого елемента. Спробуйте ще раз!", "conflict": "Тип {name} вже існує. Виберіть іншу назву." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Помилка перевірки!", + "title": "Збереження розірве наявні зв’язки", "content": { "intro": "У типу робочого елемента {workItemTypeName} є:", - "parent_items": "{count, plural, one {батьківський робочий елемент} few {батьківські робочі елементи} other {батьківських робочих елементів}}", + "parent_items": "{count, plural, one {Буде видалено # батьківський зв’язок} few {Буде видалено # батьківські зв’язки} many {Буде видалено # батьківських зв’язків} other {Буде видалено # батьківських зв’язків}}.", "child_items": "{count, plural, one {дочірній робочий елемент} few {дочірні робочі елементи} other {дочірніх робочих елементів}}", "parent_line_suffix_when_also_children": ", а також ", "footer": "Ця зміна прибере батьківські та дочірні зв’язки з наявних робочих елементів типу {workItemTypeName}." }, "confirm_input": { - "label": "Введіть «Підтвердити», щоб продовжити.", - "placeholder": "Підтвердити" + "label": "Введіть «підтвердити», щоб продовжити.", + "placeholder": "підтвердити" }, "error_toast": { "title": "Помилка!", - "message": "Не вдалося розірвати ієрархію. Будь ласка, спробуйте ще раз." + "message": "Не вдалося від’єднати зв’язки й зберегти. Будь ласка, спробуйте ще раз." }, "confirm_button": { - "loading": "Застосування…", - "default": "Застосувати та від’єднати" + "loading": "Збереження", + "default": "Усе одно зберегти" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/ua/work-item.json b/packages/i18n/src/locales/ua/work-item.json index 3c3538b943e..158f41610b0 100644 --- a/packages/i18n/src/locales/ua/work-item.json +++ b/packages/i18n/src/locales/ua/work-item.json @@ -20,6 +20,7 @@ "due_date": "Додати крайній термін", "parent": "Додати батьківську робочу одиницю", "sub_issue": "Додати похідну робочу одиницю", + "dependency": "Додати залежність", "relation": "Додати зв'язок", "link": "Додати посилання", "existing": "Додати наявну робочу одиницю" @@ -110,6 +111,43 @@ "copy_link": { "success": "Посилання на коментар скопійовано в буфер обміну", "error": "Помилка при копіюванні посилання на коментар. Спробуйте пізніше." + }, + "replies": { + "create": { + "submit_button": "Додати відповідь", + "placeholder": "Додати відповідь" + }, + "toast": { + "fetch": { + "error": { + "message": "Не вдалося отримати відповіді" + } + }, + "create": { + "success": { + "message": "Відповідь успішно створено" + }, + "error": { + "message": "Не вдалося створити відповідь" + } + }, + "update": { + "success": { + "message": "Відповідь успішно оновлено" + }, + "error": { + "message": "Не вдалося оновити відповідь" + } + }, + "delete": { + "success": { + "message": "Відповідь успішно видалено" + }, + "error": { + "message": "Не вдалося видалити відповідь" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Скасувати вибір усіх" }, "open_in_full_screen": "Відкрити робочу одиницю на повний екран", + "duplicate": { + "modal": { + "title": "Зробити копію в іншому проєкті", + "description1": "Це створить копію робочої одиниці.", + "description2": "Усі дані властивостей будуть видалені під час дублювання.", + "placeholder": "Виберіть проєкт" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Робочу одиницю успішно дубльовано" + }, + "error": { + "message": "Не вдалося дублювати робочу одиницю" + } + } + }, + "pages": { + "link_pages": "З'єднати сторінки", + "show_wiki_pages": "Показати сторінки Wiki", + "link_pages_to": "З'єднати сторінки до", + "linked_pages": "Пов'язані сторінки", + "no_description": "Це порожня сторінка. Чому б не написати щось всередині та побачити це тут, як цей замісник", + "toasts": { + "link": { + "success": { + "title": "Сторінки оновлено", + "message": "Сторінки успішно оновлено" + }, + "error": { + "title": "Не вдалося оновити сторінки", + "message": "Не вдалося оновити сторінки" + } + }, + "remove": { + "success": { + "title": "Сторінку видалено", + "message": "Сторінку успішно видалено" + }, + "error": { + "title": "Не вдалося видалити сторінку", + "message": "Не вдалося видалити сторінку" + } + } + } + }, "vote": { "click_to_upvote": "Натисніть, щоб проголосувати за", "click_to_downvote": "Натисніть, щоб проголосувати проти", @@ -241,54 +326,6 @@ "title": "Неможливо оновити робочі елементи", "message": "Зміна стану не дозволена для деяких робочих елементів. Переконайтеся, що зміна стану дозволена." } - }, - "workflows": { - "toggle": { - "title": "Увімкнути робочі процеси", - "description": "Налаштуйте робочі процеси для керування переміщенням робочих елементів", - "no_states_tooltip": "До робочого процесу не додано жодного стану.", - "toast": { - "loading": { - "enabling": "Увімкнення робочих процесів", - "disabling": "Вимкнення робочих процесів" - }, - "success": { - "title": "Успіх!", - "message": "Робочі процеси успішно увімкнено." - }, - "error": { - "title": "Помилка!", - "message": "Не вдалося увімкнути робочі процеси. Будь ласка, спробуйте ще раз." - } - } - }, - "heading": "Робочі процеси", - "description": "Автоматизуйте переходи робочих елементів і налаштуйте правила, які керують тим, як завдання рухаються через процес вашого проєкту.", - "add_button": "Додати новий робочий процес", - "search": "Шукати робочі процеси", - "detail": { - "define": "Визначити робочий процес", - "add_states": "Додати стани", - "unmapped_states": { - "title": "Виявлено незіставлені стани", - "description": "Деякі робочі елементи вибраних типів зараз перебувають у станах, яких не існує в цьому робочому процесі.", - "note": "Якщо ви увімкнете цей робочий процес, ці елементи буде автоматично переміщено до початкового стану цього робочого процесу.", - "label": "Відсутні стани", - "tooltip": "Деякі робочі елементи перебувають у станах, які не зіставлені з цим робочим процесом. Відкрийте робочий процес, щоб перевірити це." - } - }, - "select_states": { - "empty_state": { - "title": "Усі стани використовуються", - "description": "Усі стани, визначені для цього проєкту, уже присутні у вашому поточному робочому процесі." - } - }, - "default_footer": { - "fallback_message": "Цей робочий процес застосовується до будь-якого типу робочого елемента, який не призначений жодному робочому процесу." - }, - "create": { - "heading": "Створити новий робочий процес" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/ua/workspace-settings.json b/packages/i18n/src/locales/ua/workspace-settings.json index 9bfda3091c3..ad89c67bd21 100644 --- a/packages/i18n/src/locales/ua/workspace-settings.json +++ b/packages/i18n/src/locales/ua/workspace-settings.json @@ -34,7 +34,8 @@ "max_length": "Назва робочого простору не може перевищувати 80 символів" }, "company_size": { - "required": "Розмір компанії є обов'язковим" + "required": "Розмір компанії є обов'язковим", + "select_a_range": "Виберіть розмір організації" } } }, @@ -65,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Платежі та плани", + "description": "Виберіть свій план, керуйте підписками та легко оновлюйте їх у міру зростання потреб.", "title": "Платежі та плани", "current_plan": "Поточний план", "free_plan": "Ви використовуєте безкоштовний план", "view_plans": "Переглянути плани" }, "exports": { + "heading": "Експорти", + "description": "Експортуйте дані вашого проєкту в різних форматах і отримуйте доступ до історії експорту з посиланнями для завантаження.", "title": "Експорти", "exporting": "Експортування", "previous_exports": "Попередні експорти", "export_separate_files": "Експортувати дані в окремі файли", + "exporting_projects": "Експортування проєкту", + "format": "Формат", "filters_info": "Застосуйте фільтри для експорту конкретних робочих елементів за вашими критеріями.", "modal": { "title": "Експортувати в", @@ -91,6 +98,8 @@ } }, "webhooks": { + "heading": "Вебхуки", + "description": "Автоматизуйте сповіщення зовнішнім сервісам, коли відбуваються події проєкту.", "title": "Вебхуки", "add_webhook": "Додати вебхук", "modal": { @@ -165,14 +174,20 @@ }, "integrations": { "title": "Інтеграції", + "heading": "Інтеграції", + "description": "Підключайтеся до популярних інструментів і сервісів, щоб синхронізувати вашу роботу в усій екосистемі робочого процесу.", "page_title": "Працюйте зі своїми даними Plane у доступних додатках або у власних.", "page_description": "Перегляньте всі інтеграції, які використовує цей робочий простір або ви." }, "imports": { - "title": "Імпорти" + "title": "Імпорти", + "heading": "Імпорти", + "description": "Підключайтеся та імпортуйте дані з ваших наявних інструментів керування проєктами, щоб оптимізувати інтеграцію робочого процесу." }, "worklogs": { - "title": "Ворклоги" + "title": "Ворклоги", + "heading": "Ворклоги", + "description": "Завантажуйте ворклоги (табелі обліку часу) для будь-кого в будь-якому проєкті." }, "group_syncing": { "title": "Синхронізація груп", @@ -241,7 +256,10 @@ "description": "Налаштуйте свій домен і увімкніть єдиний вхід" }, "project_states": { - "title": "Проджект стейти" + "title": "Проджект стейти", + "heading": "Огляд прогресу для всіх проєктів.", + "description": "Стани проєктів — це функція, доступна лише в Plane, для відстеження прогресу всіх ваших проєктів за будь-якою властивістю проєкту.", + "go_to_settings": "Перейти до налаштувань" }, "projects": { "title": "Проєкти", @@ -251,6 +269,16 @@ "labels": "Мітки проєктів" } }, + "templates": { + "title": "Шаблони", + "heading": "Шаблони", + "description": "Заощаджуйте 80% часу, витраченого на створення проєктів, робочих одиниць і сторінок, коли ви використовуєте шаблони." + }, + "relations": { + "title": "Зв'язки", + "heading": "Зв'язки", + "description": "Створюйте та керуйте типами зв'язків, які поєднують робочі одиниці у вашому робочому просторі." + }, "cancel_trial": { "title": "Спочатку скасуйте пробний період.", "description": "У вас активний пробний період одного з наших платних планів. Будь ласка, спочатку скасуйте його, щоб продовжити.", @@ -262,6 +290,7 @@ "cancel_error_message": "Спробуйте ще раз, будь ласка." }, "applications": { + "internal": "Внутрішній", "title": "Додатки", "applicationId_copied": "ID додатку скопійовано в буфер обміну", "clientId_copied": "ID клієнта скопійовано в буфер обміну", @@ -270,10 +299,61 @@ "your_apps": "Ваші додатки", "connect": "Підключити", "connected": "Підключено", + "disconnect": "Відключити", "install": "Встановити", "installed": "Встановлено", "configure": "Налаштувати", "app_available": "Ви зробили цей додаток доступним для використання з робочим простором Plane", + "app_credentials_regenrated": { + "title": "Облікові дані додатка були успішно згенеровані повторно", + "description": "Замініть клієнтський секрет усюди, де він використовується. Попередній секрет більше не дійсний." + }, + "app_created": { + "title": "Додаток успішно створено", + "description": "Використайте облікові дані, щоб встановити додаток у робочому просторі Plane" + }, + "installed_apps": "Встановлені додатки", + "all_apps": "Усі додатки", + "internal_apps": "Внутрішні додатки", + "app_name_title": "Як ви назвете цей додаток", + "app_description_title": { + "label": "Довгий опис", + "placeholder": "Напишіть довгий опис для маркетплейсу. Натисніть '/' для команд." + }, + "authorization_grant_type": { + "title": "Тип підключення", + "description": "Виберіть, чи має ваш додаток бути встановлений один раз для робочого простору, чи дозволити кожному користувачу підключити свій власний обліковий запис" + }, + "website": { + "title": "Вебсайт", + "description": "Посилання на вебсайт вашого додатка.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Створювач додатків", + "description": "Особа чи організація, яка створює додаток." + }, + "app_maker_error": "Розробник додатку обов'язковий", + "setup_url": { + "label": "URL налаштування", + "description": "Користувачі будуть перенаправлені на цю URL після встановлення додатка.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL вебхука", + "description": "Тут ми будемо надсилати події вебхука та оновлення з робочих просторів, де встановлено ваш додаток.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Секрет вебхука", + "description": "Секрет, що використовується для перевірки вхідних запитів вебхука.", + "placeholder": "Введіть випадковий секретний ключ" + }, + "redirect_uris": { + "label": "URI перенаправлення (через пробіл)", + "description": "Користувачі будуть перенаправлені на цей шлях після автентифікації через Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Підключіть робочий простір Plane, щоб почати використання", "client_id_and_secret": "ID та Секрет Клієнта", "client_id_and_secret_description": "Скопіюйте та збережіть цей секретний ключ. Ви не зможете побачити цей ключ після натискання Закрити.", @@ -285,23 +365,13 @@ "slug_already_exists": "Слаг вже існує", "failed_to_create_application": "Не вдалося створити додаток", "upload_logo": "Завантажити Логотип", - "app_name_title": "Як ви назвете цей додаток", "app_name_error": "Назва додатку обов'язкова", "app_short_description_title": "Дайте короткий опис цьому додатку", "app_short_description_error": "Короткий опис додатку обов'язковий", - "app_description_title": { - "label": "Довгий опис", - "placeholder": "Напишіть довгий опис для маркетплейсу. Натисніть '/' для команд." - }, - "authorization_grant_type": { - "title": "Тип підключення", - "description": "Виберіть, чи має ваш додаток бути встановлений один раз для робочого простору, чи дозволити кожному користувачу підключити свій власний обліковий запис" - }, "app_description_error": "Опис додатку обов'язковий", "app_slug_title": "Слаг додатку", "app_slug_error": "Слаг додатку обов'язковий", - "app_maker_title": "Розробник додатку", - "app_maker_error": "Розробник додатку обов'язковий", + "invalid_website_error": "Недійсний вебсайт", "webhook_url_title": "URL вебхука", "webhook_url_error": "URL вебхука обов'язковий", "invalid_webhook_url_error": "Недійсний URL вебхука", @@ -315,6 +385,8 @@ "authorized_javascript_origins_description": "Введіть джерела через пробіл, звідки додаток зможе робити запити, наприклад app.com example.com", "create_app": "Створити додаток", "update_app": "Оновити додаток", + "build_your_own_app": "Створіть власний додаток", + "edit_app_details": "Редагувати деталі додатку", "regenerate_client_secret_description": "Перегенерувати секрет клієнта. Після перегенерації ви зможете скопіювати ключ або завантажити його у файл CSV.", "regenerate_client_secret": "Перегенерувати секрет клієнта", "regenerate_client_secret_confirm_title": "Ви впевнені, що хочете перегенерувати секрет клієнта?", @@ -361,7 +433,6 @@ "video_url_title": "URL відео", "video_url_error": "URL відео обов'язковий", "invalid_video_url_error": "Недійсний URL відео", - "setup_url_title": "URL налаштування", "setup_url_error": "URL налаштування обов'язковий", "invalid_setup_url_error": "Недійсний URL налаштування", "configuration_url_title": "URL налаштування", @@ -377,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Недійсний файл або перевищує ліміт розміру ({size} MB)", "uploading": "Завантаження...", "upload_and_save": "Завантажити та зберегти", - "app_credentials_regenrated": { - "title": "Облікові дані додатка були успішно згенеровані повторно", - "description": "Замініть клієнтський секрет усюди, де він використовується. Попередній секрет більше не дійсний." - }, - "app_created": { - "title": "Додаток успішно створено", - "description": "Використайте облікові дані, щоб встановити додаток у робочому просторі Plane" - }, - "installed_apps": "Встановлені додатки", - "all_apps": "Усі додатки", - "internal_apps": "Внутрішні додатки", - "website": { - "title": "Вебсайт", - "description": "Посилання на вебсайт вашого додатка.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Створювач додатків", - "description": "Особа чи організація, яка створює додаток." - }, - "setup_url": { - "label": "URL налаштування", - "description": "Користувачі будуть перенаправлені на цю URL після встановлення додатка.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL вебхука", - "description": "Тут ми будемо надсилати події вебхука та оновлення з робочих просторів, де встановлено ваш додаток.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI перенаправлення (через пробіл)", - "description": "Користувачі будуть перенаправлені на цей шлях після автентифікації через Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Запит на встановлення", "app_consent_no_access_description": "Цей додаток можна встановити лише після того, як адміністратор робочого простору його встановить. Зверніться до адміністратора робочого простору, щоб продовжити.", + "app_consent_unapproved_title": "Цей додаток ще не переглянуто та не схвалено Plane.", + "app_consent_unapproved_description": "Переконайтеся, що ви довіряєте цьому додатку, перш ніж підключати його до вашого робочого простору.", + "go_to_app": "Перейти до додатку", "enable_app_mentions": "Увімкнути згадки додатка", "enable_app_mentions_tooltip": "Коли це увімкнено, користувачі можуть згадувати або призначати робочі елементи цьому додатку.", "scopes": "Області доступу", @@ -432,15 +472,18 @@ "profile": "Доступ до інформації профілю користувача", "agents": "Доступ до агентів та всіх пов’язаних з агентами сутностей", "assets": "Доступ до активів та всіх пов’язаних з активами сутностей" - }, - "build_your_own_app": "Створіть власний додаток", - "edit_app_details": "Редагувати деталі додатку", - "internal": "Внутрішній" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Переглядайте, як ваша робота стає розумнішою та швидшою завдяки штучному інтелекту, який напряму пов'язаний з вашою роботою та базою знань." + }, + "runners": { + "title": "Plane Runner", + "heading": "Скрипти", + "new_script": "Новий скрипт", + "description": "Автоматизуйте свої робочі процеси за допомогою користувацьких скриптів і правил автоматизації." } }, "empty_state": { diff --git a/packages/i18n/src/locales/ua/workspace.json b/packages/i18n/src/locales/ua/workspace.json index 48d2942121b..cb288fd2d89 100644 --- a/packages/i18n/src/locales/ua/workspace.json +++ b/packages/i18n/src/locales/ua/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Обсяг і попит", "custom": "Користувацька аналітика" }, + "total": "Усього {entity}", + "started_work_items": "Розпочаті {entity}", + "backlog_work_items": "{entity} у беклозі", + "un_started_work_items": "Нерозпочаті {entity}", + "completed_work_items": "Завершені {entity}", + "project_insights": "Аналітика проєкту", + "summary_of_projects": "Зведення проєктів", + "all_projects": "Усі проєкти", + "trend_on_charts": "Тенденція на графіках", + "active_projects": "Активні проєкти", + "customized_insights": "Персоналізовані аналітичні дані", + "created_vs_resolved": "Створено vs Вирішено", "empty_state": { - "customized_insights": { - "description": "Призначені вам робочі елементи, розбиті за станом, з’являться тут.", - "title": "Ще немає даних" + "project_insights": { + "title": "Ще немає даних", + "description": "Призначені вам робочі елементи, розбиті за станом, з’являться тут." }, "created_vs_resolved": { - "description": "Створені та вирішені з часом робочі елементи з’являться тут.", - "title": "Ще немає даних" + "title": "Ще немає даних", + "description": "Створені та вирішені з часом робочі елементи з’являться тут." }, - "project_insights": { + "customized_insights": { "title": "Ще немає даних", "description": "Призначені вам робочі елементи, розбиті за станом, з’являться тут." }, @@ -132,29 +144,11 @@ "description": "Аналітика тенденцій intake з’явиться тут. Додайте робочі елементи до intake, щоб почати відстеження тенденцій." } }, - "created_vs_resolved": "Створено vs Вирішено", - "customized_insights": "Персоналізовані аналітичні дані", - "backlog_work_items": "{entity} у беклозі", - "active_projects": "Активні проєкти", - "trend_on_charts": "Тенденція на графіках", - "all_projects": "Усі проєкти", - "summary_of_projects": "Зведення проєктів", - "project_insights": "Аналітика проєкту", - "started_work_items": "Розпочаті {entity}", - "total_work_items": "Усього {entity}", - "total_projects": "Усього проєктів", - "total_admins": "Усього адміністраторів", - "total_users": "Усього користувачів", - "total_intake": "Загальний дохід", - "un_started_work_items": "Нерозпочаті {entity}", - "total_guests": "Усього гостей", - "completed_work_items": "Завершені {entity}", - "total": "Усього {entity}", + "upgrade_to_plan": "Оновіть до {plan}, щоб розблокувати {tab}", + "workitem_resolved_vs_pending": "Вирішені vs очікуючі робочі елементи", "projects_by_status": "Проєкти за статусом", "active_users": "Активні користувачі", - "intake_trends": "Тенденції прийому", - "workitem_resolved_vs_pending": "Вирішені vs очікуючі робочі елементи", - "upgrade_to_plan": "Оновіть до {plan}, щоб розблокувати {tab}" + "intake_trends": "Тенденції прийому" }, "workspace_projects": { "label": "{count, plural, one {Проєкт} few {Проєкти} other {Проєктів}}", @@ -318,6 +312,10 @@ "archived": { "title": "Ще немає заархівованих пейджів", "description": "Архівуйте пейджі, які не на вашому радарі. Доступ до них тут, коли потрібно." + }, + "shared": { + "title": "Поки що немає спільних сторінок", + "description": "Сторінки, якими з вами поділилися, з'являться тут." } } }, diff --git a/packages/i18n/src/locales/vi-VN/auth.json b/packages/i18n/src/locales/vi-VN/auth.json index 823ee56fa0d..04e00f3aa45 100644 --- a/packages/i18n/src/locales/vi-VN/auth.json +++ b/packages/i18n/src/locales/vi-VN/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "Email", - "placeholder": "name@company.com", - "errors": { - "required": "Email là bắt buộc", - "invalid": "Email không hợp lệ" - } - }, - "password": { - "label": "Mật khẩu", - "set_password": "Đặt mật khẩu", - "placeholder": "Nhập mật khẩu", - "confirm_password": { - "label": "Xác nhận mật khẩu", - "placeholder": "Xác nhận mật khẩu" - }, - "current_password": { - "label": "Mật khẩu hiện tại" - }, - "new_password": { - "label": "Mật khẩu mới", - "placeholder": "Nhập mật khẩu mới" - }, - "change_password": { - "label": { - "default": "Thay đổi mật khẩu", - "submitting": "Đang thay đổi mật khẩu" - } - }, - "errors": { - "match": "Mật khẩu không khớp", - "empty": "Vui lòng nhập mật khẩu", - "length": "Mật khẩu phải dài hơn 8 ký tự", - "strength": { - "weak": "Mật khẩu yếu", - "strong": "Mật khẩu mạnh" - } - }, - "submit": "Đặt mật khẩu", - "toast": { - "change_password": { - "success": { - "title": "Thành công!", - "message": "Mật khẩu đã được thay đổi thành công." - }, - "error": { - "title": "Lỗi!", - "message": "Đã xảy ra lỗi. Vui lòng thử lại." - } - } - } - }, - "unique_code": { - "label": "Mã duy nhất", - "placeholder": "123456", - "paste_code": "Dán mã xác minh đã gửi đến email của bạn", - "requesting_new_code": "Đang yêu cầu mã mới", - "sending_code": "Đang gửi mã" - }, - "already_have_an_account": "Đã có tài khoản?", - "login": "Đăng nhập", - "create_account": "Tạo tài khoản", - "new_to_plane": "Lần đầu sử dụng Plane?", - "back_to_sign_in": "Quay lại đăng nhập", - "resend_in": "Gửi lại sau {seconds} giây", - "sign_in_with_unique_code": "Đăng nhập bằng mã duy nhất", - "forgot_password": "Quên mật khẩu?", - "username": { - "label": "Tên người dùng", - "placeholder": "Nhập tên người dùng của bạn" - } - }, - "sign_up": { - "header": { - "label": "Tạo tài khoản để bắt đầu quản lý công việc cùng nhóm của bạn.", - "step": { - "email": { - "header": "Đăng ký", - "sub_header": "" - }, - "password": { - "header": "Đăng ký", - "sub_header": "Đăng ký bằng cách kết hợp email-mật khẩu." - }, - "unique_code": { - "header": "Đăng ký", - "sub_header": "Đăng ký bằng mã duy nhất được gửi đến email trên." - } - } - }, - "errors": { - "password": { - "strength": "Vui lòng đặt mật khẩu mạnh để tiếp tục" - } - } - }, - "sign_in": { - "header": { - "label": "Đăng nhập để bắt đầu quản lý công việc cùng nhóm của bạn.", - "step": { - "email": { - "header": "Đăng nhập hoặc đăng ký", - "sub_header": "" - }, - "password": { - "header": "Đăng nhập hoặc đăng ký", - "sub_header": "Đăng nhập bằng cách kết hợp email-mật khẩu của bạn." - }, - "unique_code": { - "header": "Đăng nhập hoặc đăng ký", - "sub_header": "Đăng nhập bằng mã duy nhất được gửi đến email trên." - } - } - } - }, - "forgot_password": { - "title": "Đặt lại mật khẩu", - "description": "Nhập địa chỉ email đã xác minh cho tài khoản người dùng của bạn và chúng tôi sẽ gửi cho bạn liên kết đặt lại mật khẩu.", - "email_sent": "Chúng tôi đã gửi liên kết đặt lại đến email của bạn", - "send_reset_link": "Gửi liên kết đặt lại", - "errors": { - "smtp_not_enabled": "Chúng tôi nhận thấy quản trị viên của bạn chưa bật SMTP, chúng tôi sẽ không thể gửi liên kết đặt lại mật khẩu" - }, - "toast": { - "success": { - "title": "Email đã được gửi", - "message": "Hãy kiểm tra hộp thư đến của bạn để lấy liên kết đặt lại mật khẩu. Nếu bạn không nhận được trong vòng vài phút, vui lòng kiểm tra thư mục spam." - }, - "error": { - "title": "Lỗi!", - "message": "Đã xảy ra lỗi. Vui lòng thử lại." - } - } - }, - "reset_password": { - "title": "Đặt mật khẩu mới", - "description": "Bảo vệ tài khoản của bạn bằng mật khẩu mạnh" - }, - "set_password": { - "title": "Bảo vệ tài khoản của bạn", - "description": "Đặt mật khẩu giúp bạn đăng nhập an toàn" - }, - "sign_out": { - "toast": { - "error": { - "title": "Lỗi!", - "message": "Không thể đăng xuất. Vui lòng thử lại." - } - } - }, - "ldap": { - "header": { - "label": "Tiếp tục với {ldapProviderName}", - "sub_header": "Nhập thông tin đăng nhập {ldapProviderName} của bạn" - } - } - }, "sso": { "header": "Danh tính", "description": "Cấu hình miền của bạn để truy cập các tính năng bảo mật bao gồm đăng nhập một lần.", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "Email", + "placeholder": "name@company.com", + "errors": { + "required": "Email là bắt buộc", + "invalid": "Email không hợp lệ" + } + }, + "password": { + "label": "Mật khẩu", + "set_password": "Đặt mật khẩu", + "placeholder": "Nhập mật khẩu", + "confirm_password": { + "label": "Xác nhận mật khẩu", + "placeholder": "Xác nhận mật khẩu" + }, + "current_password": { + "label": "Mật khẩu hiện tại" + }, + "new_password": { + "label": "Mật khẩu mới", + "placeholder": "Nhập mật khẩu mới" + }, + "change_password": { + "label": { + "default": "Thay đổi mật khẩu", + "submitting": "Đang thay đổi mật khẩu" + } + }, + "errors": { + "match": "Mật khẩu không khớp", + "empty": "Vui lòng nhập mật khẩu", + "length": "Mật khẩu phải dài hơn 8 ký tự", + "strength": { + "weak": "Mật khẩu yếu", + "strong": "Mật khẩu mạnh" + } + }, + "submit": "Đặt mật khẩu", + "toast": { + "change_password": { + "success": { + "title": "Thành công!", + "message": "Mật khẩu đã được thay đổi thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Đã xảy ra lỗi. Vui lòng thử lại." + } + } + } + }, + "unique_code": { + "label": "Mã duy nhất", + "placeholder": "123456", + "paste_code": "Dán mã xác minh đã gửi đến email của bạn", + "requesting_new_code": "Đang yêu cầu mã mới", + "sending_code": "Đang gửi mã" + }, + "already_have_an_account": "Đã có tài khoản?", + "login": "Đăng nhập", + "create_account": "Tạo tài khoản", + "new_to_plane": "Lần đầu sử dụng Plane?", + "back_to_sign_in": "Quay lại đăng nhập", + "resend_in": "Gửi lại sau {seconds} giây", + "sign_in_with_unique_code": "Đăng nhập bằng mã duy nhất", + "forgot_password": "Quên mật khẩu?", + "username": { + "label": "Tên người dùng", + "placeholder": "Nhập tên người dùng của bạn" + } + }, + "sign_up": { + "header": { + "label": "Tạo tài khoản để bắt đầu quản lý công việc cùng nhóm của bạn.", + "step": { + "email": { + "header": "Đăng ký", + "sub_header": "" + }, + "password": { + "header": "Đăng ký", + "sub_header": "Đăng ký bằng cách kết hợp email-mật khẩu." + }, + "unique_code": { + "header": "Đăng ký", + "sub_header": "Đăng ký bằng mã duy nhất được gửi đến email trên." + } + } + }, + "errors": { + "password": { + "strength": "Vui lòng đặt mật khẩu mạnh để tiếp tục" + } + } + }, + "sign_in": { + "header": { + "label": "Đăng nhập để bắt đầu quản lý công việc cùng nhóm của bạn.", + "step": { + "email": { + "header": "Đăng nhập hoặc đăng ký", + "sub_header": "" + }, + "password": { + "header": "Đăng nhập hoặc đăng ký", + "sub_header": "Đăng nhập bằng cách kết hợp email-mật khẩu của bạn." + }, + "unique_code": { + "header": "Đăng nhập hoặc đăng ký", + "sub_header": "Đăng nhập bằng mã duy nhất được gửi đến email trên." + } + } + } + }, + "forgot_password": { + "title": "Đặt lại mật khẩu", + "description": "Nhập địa chỉ email đã xác minh cho tài khoản người dùng của bạn và chúng tôi sẽ gửi cho bạn liên kết đặt lại mật khẩu.", + "email_sent": "Chúng tôi đã gửi liên kết đặt lại đến email của bạn", + "send_reset_link": "Gửi liên kết đặt lại", + "errors": { + "smtp_not_enabled": "Chúng tôi nhận thấy quản trị viên của bạn chưa bật SMTP, chúng tôi sẽ không thể gửi liên kết đặt lại mật khẩu" + }, + "toast": { + "success": { + "title": "Email đã được gửi", + "message": "Hãy kiểm tra hộp thư đến của bạn để lấy liên kết đặt lại mật khẩu. Nếu bạn không nhận được trong vòng vài phút, vui lòng kiểm tra thư mục spam." + }, + "error": { + "title": "Lỗi!", + "message": "Đã xảy ra lỗi. Vui lòng thử lại." + } + } + }, + "reset_password": { + "title": "Đặt mật khẩu mới", + "description": "Bảo vệ tài khoản của bạn bằng mật khẩu mạnh" + }, + "set_password": { + "title": "Bảo vệ tài khoản của bạn", + "description": "Đặt mật khẩu giúp bạn đăng nhập an toàn" + }, + "sign_out": { + "toast": { + "error": { + "title": "Lỗi!", + "message": "Không thể đăng xuất. Vui lòng thử lại." + } + } + }, + "ldap": { + "header": { + "label": "Tiếp tục với {ldapProviderName}", + "sub_header": "Nhập thông tin đăng nhập {ldapProviderName} của bạn" + } + } } } diff --git a/packages/i18n/src/locales/vi-VN/automation.json b/packages/i18n/src/locales/vi-VN/automation.json index ee40f0df2b1..8dec0fb3461 100644 --- a/packages/i18n/src/locales/vi-VN/automation.json +++ b/packages/i18n/src/locales/vi-VN/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "Quay lại", "next": "Thêm hành động" + }, + "warning": { + "disabled_trigger_switching": "Bạn không thể thay đổi loại kích hoạt sau khi đã tạo" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "Chọn một tùy chọn", "handler_name": { "add_comment": "Thêm bình luận", - "change_property": "Thay đổi thuộc tính" + "change_property": "Thay đổi thuộc tính", + "run_script": "Chạy script" }, "configuration": { "label": "Cấu hình", @@ -89,6 +93,9 @@ "comment_block": { "title": "Thêm bình luận" }, + "run_script_block": { + "title": "Chạy script" + }, "change_property_block": { "title": "Thay đổi thuộc tính" }, @@ -115,6 +122,8 @@ }, "table": { "title": "Tiêu đề tự động hóa", + "scope": "Phạm vi", + "projects": "Dự án", "last_run_on": "Chạy lần cuối vào", "created_on": "Được tạo vào", "last_updated_on": "Cập nhật lần cuối vào", @@ -230,6 +239,35 @@ "description": "Tự động hóa là cách để tự động hóa các tác vụ trong dự án của bạn.", "sub_description": "Lấy lại 80% thời gian quản trị của bạn khi sử dụng Tự động hóa." } + }, + "global_automations": { + "project_select": { + "label": "Chọn các dự án để chạy tự động hóa này", + "all_projects": { + "label": "Tất cả dự án", + "description": "Tự động hóa sẽ chạy cho tất cả dự án trong không gian làm việc." + }, + "select_projects": { + "label": "Chọn dự án", + "description": "Tự động hóa sẽ chạy cho các dự án đã chọn trong không gian làm việc.", + "placeholder": "Chọn dự án" + } + }, + "settings": { + "sidebar_label": "Tự động hóa", + "title": "Tự động hóa", + "description": "Chuẩn hóa quy trình trong toàn bộ không gian làm việc với tự động hóa toàn cục." + }, + "table": { + "scope": { + "global": "Toàn cục", + "project": { + "label": "Dự án", + "multiple": "Nhiều", + "all": "Tất cả" + } + } + } } } } diff --git a/packages/i18n/src/locales/vi-VN/common.json b/packages/i18n/src/locales/vi-VN/common.json index 268d4f6ac6a..f9aae43c1b9 100644 --- a/packages/i18n/src/locales/vi-VN/common.json +++ b/packages/i18n/src/locales/vi-VN/common.json @@ -17,6 +17,7 @@ "no": "Không", "ok": "OK", "name": "Tên", + "unknown_user": "Người dùng không xác định", "description": "Mô tả", "search": "Tìm kiếm", "add_member": "Thêm thành viên", @@ -56,7 +57,8 @@ "no_worklogs": "Chưa có nhật ký công việc", "no_history": "Chưa có lịch sử" }, - "appearance": "Giao diện", + "preferences": "Tùy chọn", + "language_and_time": "Ngôn ngữ và thời gian", "notifications": "Thông báo", "workspaces": "Không gian làm việc", "create_workspace": "Tạo không gian làm việc", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "Đã xảy ra lỗi. Vui lòng thử lại.", "load_more": "Tải thêm", "select_or_customize_your_interface_color_scheme": "Chọn hoặc tùy chỉnh giao diện màu của bạn.", + "timezone_setting": "Cài đặt múi giờ hiện tại.", + "language_setting": "Chọn ngôn ngữ được sử dụng trong giao diện người dùng.", + "settings_moved_to_preferences": "Cài đặt Múi giờ và Ngôn ngữ đã được chuyển sang tùy chọn.", + "go_to_preferences": "Đi đến tùy chọn", "select_the_cursor_motion_style_that_feels_right_for_you": "Chọn kiểu chuyển động con trỏ phù hợp với bạn.", "theme": "Chủ đề", "smooth_cursor": "Con trỏ mượt", @@ -163,6 +169,7 @@ "project_created_successfully": "Dự án đã được tạo thành công", "project_created_successfully_description": "Dự án đã được tạo thành công. Bây giờ bạn có thể bắt đầu thêm mục công việc.", "project_name_already_taken": "Tên dự án đã được sử dụng.", + "project_name_cannot_contain_special_characters": "Tên dự án không được chứa ký tự đặc biệt.", "project_identifier_already_taken": "ID dự án đã được sử dụng.", "project_cover_image_alt": "Ảnh bìa dự án", "name_is_required": "Tên là bắt buộc", @@ -207,6 +214,7 @@ "issues": "Mục công việc", "cycles": "Chu kỳ", "modules": "Mô-đun", + "pages": "Trang", "intake": "Thu thập", "renew": "Gia hạn", "preview": "Xem trước", @@ -298,6 +306,7 @@ "start_date": "Ngày bắt đầu", "end_date": "Ngày kết thúc", "due_date": "Ngày hết hạn", + "target_date": "Ngày đích", "estimate": "Ước tính", "change_parent_issue": "Thay đổi mục công việc cha", "remove_parent_issue": "Xóa mục công việc cha", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "Mật khẩu mới phải khác mật khẩu cũ", "edited": "đã chỉnh sửa", "bot": "bot", + "settings_description": "Quản lý tài khoản, không gian làm việc và các tùy chọn dự án của bạn tại một nơi. Chuyển đổi giữa các tab để dễ dàng cấu hình.", + "back_to_workspace": "Quay lại không gian làm việc", "upgrade_request": "Yêu cầu Quản trị viên Không gian làm việc nâng cấp.", "copied_to_clipboard": "Đã sao chép vào bảng tạm", "copied_to_clipboard_description": "URL đã được sao chép thành công vào bảng tạm của bạn", @@ -422,6 +433,9 @@ "modules": "Mô-đun", "labels": "Nhãn", "label": "Nhãn", + "admins": "Quản trị viên", + "users": "Người dùng", + "guests": "Khách", "assignees": "Người phụ trách", "assignee": "Người phụ trách", "created_by": "Người tạo", @@ -451,6 +465,8 @@ "work_item": "Mục công việc", "work_items": "Mục công việc", "sub_work_item": "Mục công việc con", + "views": "Chế độ xem", + "pages": "Trang", "add": "Thêm", "warning": "Cảnh báo", "updating": "Đang cập nhật", @@ -496,7 +512,7 @@ "workspace_level": "Cấp không gian làm việc", "order_by": { "label": "Sắp xếp theo", - "manual": "Thủ công", + "manual": "Thủ công - Xếp hạng", "last_created": "Mới tạo nhất", "last_updated": "Mới cập nhật nhất", "start_date": "Ngày bắt đầu", @@ -532,6 +548,7 @@ "continue": "Tiếp tục", "resend": "Gửi lại", "relations": "Mối quan hệ", + "dependencies": "Phụ thuộc", "errors": { "default": { "title": "Lỗi!", @@ -563,11 +580,27 @@ "quarter": "Quý", "press_for_commands": "Nhấn '/' để sử dụng lệnh", "click_to_add_description": "Nhấp để thêm mô tả", + "on_track": "Đúng tiến độ", + "off_track": "Chệch hướng", + "at_risk": "Có nguy cơ", + "timeline": "Dòng thời gian", + "completion": "Hoàn thành", + "upcoming": "Sắp tới", + "completed": "Đã hoàn thành", + "in_progress": "Đang tiến hành", + "planned": "Đã lên kế hoạch", + "paused": "Tạm dừng", "search": { "label": "Tìm kiếm", "placeholder": "Nhập nội dung tìm kiếm", "no_matches_found": "Không tìm thấy kết quả phù hợp", - "no_matching_results": "Không có kết quả phù hợp" + "no_matching_results": "Không có kết quả phù hợp", + "min_chars": "Nhập ít nhất {count} ký tự để tìm kiếm", + "error": "Lỗi khi tải kết quả tìm kiếm", + "no_results": { + "title": "Không có kết quả phù hợp", + "description": "Xóa tiêu chí tìm kiếm để xem tất cả kết quả" + } }, "actions": { "edit": "Chỉnh sửa", @@ -576,6 +609,7 @@ "copy_link": "Sao chép liên kết", "copy_branch_name": "Sao chép tên nhánh", "archive": "Lưu trữ", + "restore": "Khôi phục", "delete": "Xóa", "remove_relation": "Xóa mối quan hệ", "subscribe": "Đăng ký", @@ -583,7 +617,9 @@ "clear_sorting": "Xóa sắp xếp", "show_weekends": "Hiển thị cuối tuần", "enable": "Bật", - "disable": "Tắt" + "disable": "Tắt", + "copy_markdown": "Sao chép markdown", + "reply": "Trả lời" }, "name": "Tên", "discard": "Hủy bỏ", @@ -596,6 +632,7 @@ "disabled": "Đã tắt", "mandate": "Ủy quyền", "mandatory": "Bắt buộc", + "global": "Toàn cục", "yes": "Có", "no": "Không", "please_wait": "Vui lòng đợi", @@ -605,6 +642,7 @@ "or": "Hoặc", "next": "Tiếp theo", "back": "Quay lại", + "retry": "Thử lại", "cancelling": "Đang hủy", "configuring": "Đang cấu hình", "clear": "Xóa", @@ -659,31 +697,27 @@ "deactivated_user": "Người dùng bị vô hiệu hóa", "apply": "Áp dụng", "applying": "Đang áp dụng", - "users": "Người dùng", - "admins": "Quản trị viên", - "guests": "Khách", - "on_track": "Đúng tiến độ", - "off_track": "Chệch hướng", - "at_risk": "Có nguy cơ", - "timeline": "Dòng thời gian", - "completion": "Hoàn thành", - "upcoming": "Sắp tới", - "completed": "Đã hoàn thành", - "in_progress": "Đang tiến hành", - "planned": "Đã lên kế hoạch", - "paused": "Tạm dừng", + "overview": "Tổng quan", "no_of": "Số lượng {entity}", "resolved": "Đã giải quyết", + "get_started": "Bắt đầu", "worklogs": "Nhật ký công việc", "project_updates": "Cập nhật dự án", - "overview": "Tổng quan", "workflows": "Quy trình làm việc", "templates": "Mẫu", + "business": "Doanh nghiệp", "members_and_teamspaces": "Thành viên và không gian nhóm", + "recurring_work_items": "Mục công việc định kỳ", + "milestones": "Cột mốc", "open_in_full_screen": "Mở {page} trong chế độ toàn màn hình", "details": "Chi tiết", "project_structure": "Cấu trúc dự án", - "custom_properties": "Thuộc tính tùy chỉnh" + "custom_properties": "Thuộc tính tùy chỉnh", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "Trục X", @@ -789,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane không khởi động được. Điều này có thể do một hoặc nhiều dịch vụ Plane không khởi động được.", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "Chọn View Logs từ setup.sh và log Docker để chắc chắn." }, + "customize_navigation": "Tùy chỉnh điều hướng", + "personal": "Cá nhân", + "accordion_navigation_control": "Điều hướng thanh bên kiểu accordion", + "horizontal_navigation_bar": "Điều hướng dạng tab", + "show_limited_projects_on_sidebar": "Hiển thị số dự án giới hạn trên thanh bên", + "enter_number_of_projects": "Nhập số lượng dự án", + "pin": "Ghim", + "unpin": "Bỏ ghim", "workspace_dashboards": "Bảng điều khiển", "pi_chat": "Plane AI", "in_app": "Trong ứng dụng", "forms": "Biểu mẫu", - "choose_workspace_for_integration": "Chọn không gian làm việc để kết nối ứng dụng này", - "integrations_description": "Ứng dụng làm việc với Plane phải kết nối với không gian làm việc mà bạn là quản trị viên.", - "create_a_new_workspace": "Tạo không gian làm việc mới", - "learn_more_about_workspaces": "Tìm hiểu thêm về không gian làm việc", - "no_workspaces_to_connect": "Không có không gian làm việc để kết nối", - "no_workspaces_to_connect_description": "Bạn cần tạo không gian làm việc để kết nối ứng dụng này", + "milestones": "Cột mốc", + "milestones_description": "Cột mốc cung cấp một lớp để căn chỉnh các mục công việc hướng đến ngày hoàn thành chung.", "file_upload": { "upload_text": "Nhấp vào đây để tải lên tệp", "drag_drop_text": "Kéo và thả", "processing": "Đang xử lý", - "invalid": "Loại tệp không hợp lệ", + "invalid_file_type": "Loại tệp không hợp lệ", "missing_fields": "Thiếu trường", "success": "{fileName} đã được tải lên!" }, - "project_name_cannot_contain_special_characters": "Tên dự án không được chứa ký tự đặc biệt.", "date": "Ngày", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/vi-VN/editor.json b/packages/i18n/src/locales/vi-VN/editor.json index 9935694e81a..24ff7ca2b0b 100644 --- a/packages/i18n/src/locales/vi-VN/editor.json +++ b/packages/i18n/src/locales/vi-VN/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "Vui lòng nhập một URL hợp lệ." } + }, + "ai_block": { + "content": { + "placeholder": "Mô tả nội dung của khối này", + "generated_here": "Nội dung AI của bạn sẽ được tạo ở đây" + }, + "block_types": { + "placeholder": "Chọn loại khối", + "summarize_page": "Tóm tắt trang", + "custom_prompt": "Gợi ý tùy chỉnh" + }, + "actions": { + "discard": "Hủy bỏ", + "generate": "Tạo", + "generating": "Đang tạo", + "rewriting": "Đang viết lại", + "rewrite": "Viết lại", + "use_this": "Sử dụng cái này", + "refine": "Tinh chỉnh" + } } } diff --git a/packages/i18n/src/locales/vi-VN/empty-state.json b/packages/i18n/src/locales/vi-VN/empty-state.json index 86760bab372..3e6a3be09af 100644 --- a/packages/i18n/src/locales/vi-VN/empty-state.json +++ b/packages/i18n/src/locales/vi-VN/empty-state.json @@ -249,10 +249,22 @@ "title": "Theo dõi bảng chấm công cho tất cả thành viên", "description": "Ghi nhật ký thời gian trên các mục công việc để xem bảng chấm công chi tiết cho bất kỳ thành viên nào trong đội qua các dự án." }, + "group_syncing": { + "title": "Chưa có ánh xạ nhóm" + }, "template_setting": { "title": "Chưa có mẫu", "description": "Giảm thời gian thiết lập bằng cách tạo mẫu cho dự án, mục công việc và trang — và bắt đầu công việc mới trong vài giây.", "cta_primary": "Tạo mẫu" + }, + "workflows": { + "title": "Chưa có quy trình làm việc", + "description": "Tạo quy trình làm việc để quản lý tiến độ của các mục công việc.", + "cta_primary": "Thêm quy trình làm việc mới", + "states": { + "title": "Thêm trạng thái", + "description": "Chọn các trạng thái mà mục công việc sẽ đi qua." + } } } } diff --git a/packages/i18n/src/locales/vi-VN/integration.json b/packages/i18n/src/locales/vi-VN/integration.json index dbb9227864e..b884fb27482 100644 --- a/packages/i18n/src/locales/vi-VN/integration.json +++ b/packages/i18n/src/locales/vi-VN/integration.json @@ -194,6 +194,10 @@ "server_error_states": "Lỗi máy chủ khi tải trạng thái" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "Kết nối và đồng bộ kho Bitbucket Data Center của bạn với Plane." + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "Xác thực token IdP bên ngoài để truy cập API.", @@ -302,6 +306,7 @@ "generic_error": "Đã xảy ra lỗi không mong muốn khi xử lý yêu cầu của bạn", "connection_not_found": "Không thể tìm thấy kết nối được yêu cầu", "multiple_connections_found": "Nhiều kết nối đã được tìm thấy khi chỉ mong đợi một kết nối", + "cannot_create_multiple_connections": "Bạn đã kết nối tổ chức của mình với một không gian làm việc. Vui lòng ngắt kết nối hiện tại trước khi kết nối mới.", "installation_not_found": "Không thể tìm thấy cài đặt được yêu cầu", "user_not_found": "Không thể tìm thấy người dùng được yêu cầu", "error_fetching_token": "Không thể lấy mã thông báo xác thực", @@ -315,6 +320,7 @@ "pulling": "Đang kéo", "timed_out": "Quá thời gian", "pulled": "Đã kéo", + "progressing": "Đang tiến hành", "transforming": "Đang chuyển đổi", "transformed": "Đã chuyển đổi", "pushing": "Đang đẩy", diff --git a/packages/i18n/src/locales/vi-VN/module.json b/packages/i18n/src/locales/vi-VN/module.json index f52374051bb..a08bdd29827 100644 --- a/packages/i18n/src/locales/vi-VN/module.json +++ b/packages/i18n/src/locales/vi-VN/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {mô-đun} other {mô-đun}}", - "no_module": "Không có mô-đun" + "no_module": "Không có mô-đun", + "select": "Thêm mô-đun" } } diff --git a/packages/i18n/src/locales/vi-VN/navigation.json b/packages/i18n/src/locales/vi-VN/navigation.json index 0222bc2a3ef..1e5d213bf1f 100644 --- a/packages/i18n/src/locales/vi-VN/navigation.json +++ b/packages/i18n/src/locales/vi-VN/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "Không tìm thấy kết quả" + } + } + }, "sidebar": { + "stickies": "Ghi chú nhanh", + "your_work": "Công việc của tôi", "projects": "Dự án", "pages": "Trang", "new_work_item": "Mục công việc mới", "home": "Trang chủ", - "your_work": "Công việc của tôi", "inbox": "Hộp thư đến", "workspace": "Không gian làm việc", "views": "Chế độ xem", @@ -21,14 +29,6 @@ "epics": "Epics", "upgrade_plan": "Nâng cấp gói", "plane_pro": "Plane Pro", - "business": "Doanh nghiệp", - "recurring_work_items": "Công việc lặp lại" - }, - "command_k": { - "empty_state": { - "search": { - "title": "Không tìm thấy kết quả" - } - } + "business": "Doanh nghiệp" } } diff --git a/packages/i18n/src/locales/vi-VN/page.json b/packages/i18n/src/locales/vi-VN/page.json index b1e2a7caa05..b54340fab29 100644 --- a/packages/i18n/src/locales/vi-VN/page.json +++ b/packages/i18n/src/locales/vi-VN/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "Kết nối trang", - "show_wiki_pages": "Hiển thị trang Wiki", - "link_pages_to": "Kết nối trang đến", - "linked_pages": "Trang đã kết nối", - "no_description": "Trang này trống. Viết điều gì đó và xem nó ở đây như thế này", - "toasts": { - "link": { - "success": { - "title": "Trang đã được cập nhật", - "message": "Trang đã được cập nhật thành công" - }, - "error": { - "title": "Trang không được cập nhật", - "message": "Trang không được cập nhật" - } - }, - "remove": { - "success": { - "title": "Trang đã được xóa", - "message": "Trang đã được xóa thành công" - }, - "error": { - "title": "Trang không được xóa", - "message": "Trang không được xóa" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "Thiếu hình ảnh", "description": "Thêm hình ảnh để xem chúng ở đây." } + }, + "comments": { + "label": "Bình luận", + "empty_state": { + "title": "Không có bình luận", + "description": "Thêm bình luận để xem chúng ở đây." + } + } + }, + "toasts": { + "errors": { + "wrong_name": "Tên ghi chú không được dài hơn 100 ký tự.", + "already_exists": "Đã tồn tại một ghi chú không có mô tả" + }, + "created": { + "title": "Đã tạo ghi chú", + "message": "Ghi chú đã được tạo thành công" + }, + "not_created": { + "title": "Không tạo được ghi chú", + "message": "Không thể tạo ghi chú" + }, + "updated": { + "title": "Đã cập nhật ghi chú", + "message": "Ghi chú đã được cập nhật thành công" + }, + "not_updated": { + "title": "Không cập nhật được ghi chú", + "message": "Không thể cập nhật ghi chú" + }, + "removed": { + "title": "Đã xóa ghi chú", + "message": "Ghi chú đã được xóa thành công" + }, + "not_removed": { + "title": "Không xóa được ghi chú", + "message": "Không thể xóa ghi chú" } }, "open_button": "Mở bảng điều hướng", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "Di chuyển", + "loading": "Đang di chuyển" + }, + "cannot_move_to_teamspace": "Không thể di chuyển trang riêng tư và trang đã chia sẻ đến không gian nhóm.", "placeholders": { + "workspace_to_all": "Tìm dự án và không gian nhóm", + "workspace_to_project": "Tìm dự án", + "project_to_all": "Tìm dự án và không gian nhóm", + "project_to_project": "Tìm dự án", "project_to_all_with_wiki": "Tìm bộ sưu tập wiki, dự án và không gian nhóm", "project_to_project_with_wiki": "Tìm bộ sưu tập wiki và dự án" }, "toasts": { + "success": { + "title": "Thành công!", + "message": "Đã di chuyển trang thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể di chuyển trang. Vui lòng thử lại sau." + }, "collection_error": { "title": "Đã chuyển vào wiki", "message": "Trang đã được chuyển vào wiki, nhưng không thể thêm vào bộ sưu tập đã chọn. Trang vẫn nằm trong General." diff --git a/packages/i18n/src/locales/vi-VN/project-settings.json b/packages/i18n/src/locales/vi-VN/project-settings.json index 299b86191c1..33f3ab63af1 100644 --- a/packages/i18n/src/locales/vi-VN/project-settings.json +++ b/packages/i18n/src/locales/vi-VN/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "Thành viên", "project_lead": "Người phụ trách dự án", + "project_lead_description": "Chọn trưởng dự án cho dự án.", "default_assignee": "Người nhận mặc định", + "default_assignee_description": "Chọn người được giao mặc định cho dự án.", + "project_subscribers": "Người theo dõi dự án", + "project_subscribers_description": "Chọn các thành viên sẽ nhận thông báo cho dự án này.", "guest_super_permissions": { "title": "Cấp quyền cho người dùng khách xem tất cả mục công việc:", "sub_heading": "Điều này sẽ cho phép khách xem tất cả mục công việc của dự án." @@ -30,13 +34,11 @@ "title": "Mời thành viên", "sub_heading": "Mời thành viên tham gia dự án của bạn.", "select_co_worker": "Chọn đồng nghiệp" - }, - "project_lead_description": "Chọn trưởng dự án cho dự án.", - "default_assignee_description": "Chọn người được giao mặc định cho dự án.", - "project_subscribers": "Người theo dõi dự án", - "project_subscribers_description": "Chọn các thành viên sẽ nhận thông báo cho dự án này." + } }, "states": { + "heading": "Trạng thái", + "description": "Xác định và tùy chỉnh trạng thái quy trình làm việc để theo dõi tiến độ các mục công việc của bạn.", "describe_this_state_for_your_members": "Mô tả trạng thái này cho thành viên của bạn.", "empty_state": { "title": "Không có trạng thái trong nhóm {groupKey}", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "Nhãn", + "description": "Tạo nhãn tùy chỉnh để phân loại và tổ chức các mục công việc của bạn", "label_title": "Tiêu đề nhãn", "label_title_is_required": "Tiêu đề nhãn là bắt buộc", "label_max_char": "Tên nhãn không nên vượt quá 255 ký tự", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "Ước tính", + "description": "Thiết lập hệ thống ước tính để theo dõi và truyền đạt nỗ lực cần thiết cho mỗi mục công việc.", "label": "Ước tính", "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.", + "enable_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", "new": "Hệ thống ước tính mới", "create": { @@ -112,6 +118,16 @@ "title": "Sắp xếp lại ước tính thất bại", "message": "Chúng tôi không thể sắp xếp lại ước tính, vui lòng thử lại" } + }, + "switch": { + "success": { + "title": "Đã tạo hệ thống ước tính", + "message": "Đã tạo và bật thành công" + }, + "error": { + "title": "Lỗi", + "message": "Đã xảy ra lỗi" + } } }, "validation": { @@ -122,6 +138,7 @@ "empty": "Giá trị ước tính không được để trống", "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'", + "remove_empty": "Ước tính không thể để trống. Hãy nhập giá trị vào mỗi trường hoặc xóa những trường bạn không có giá trị.", "fill": "Vui lòng điền vào trường ước tính này", "repeat": "Giá trị ước tính không thể lặp lại" }, @@ -161,6 +178,8 @@ }, "automations": { "label": "Tự động hóa", + "heading": "Tự động hóa", + "description": "Cấu hình các hành động tự động để tinh giản quy trình quản lý dự án và giảm công việc thủ công.", "auto-archive": { "title": "Tự động lưu trữ mục công việc đã đóng", "description": "Plane sẽ tự động lưu trữ các mục công việc đã hoàn thành hoặc đã hủy.", @@ -193,90 +212,116 @@ "description": "Cấu hình GitHub và các tích hợp khác để đồng bộ hóa các mục công việc dự án của bạn." } }, - "cycles": { - "auto_schedule": { - "heading": "Tự động lên lịch chu kỳ", - "description": "Duy trì chu kỳ hoạt động mà không cần thiết lập thủ công.", - "tooltip": "Tự động tạo chu kỳ mới dựa trên lịch trình bạn chọn.", - "edit_button": "Chỉnh sửa", - "form": { - "cycle_title": { - "label": "Tiêu đề chu kỳ", - "placeholder": "Tiêu đề", - "tooltip": "Tiêu đề sẽ được thêm số cho các chu kỳ tiếp theo. Ví dụ: Thiết kế - 1/2/3", - "validation": { - "required": "Tiêu đề chu kỳ là bắt buộc", - "max_length": "Tiêu đề không được vượt quá 255 ký tự" - } - }, - "cycle_duration": { - "label": "Thời lượng chu kỳ", - "unit": "Tuần", - "validation": { - "required": "Thời lượng chu kỳ là bắt buộc", - "min": "Thời lượng chu kỳ phải ít nhất 1 tuần", - "max": "Thời lượng chu kỳ không được vượt quá 30 tuần", - "positive": "Thời lượng chu kỳ phải là số dương" - } - }, - "cooldown_period": { - "label": "Thời gian nghỉ", - "unit": "ngày", - "tooltip": "Khoảng nghỉ giữa các chu kỳ trước khi bắt đầu chu kỳ tiếp theo.", - "validation": { - "required": "Thời gian nghỉ là bắt buộc", - "negative": "Thời gian nghỉ không thể là số âm" - } - }, - "start_date": { - "label": "Ngày bắt đầu chu kỳ", - "validation": { - "required": "Ngày bắt đầu là bắt buộc", - "past": "Ngày bắt đầu không thể ở quá khứ" - } + "workflows": { + "toggle": { + "title": "Bật quy trình làm việc", + "description": "Thiết lập quy trình làm việc để kiểm soát việc di chuyển mục công việc", + "no_states_tooltip": "Chưa có trạng thái nào được thêm vào quy trình làm việc.", + "no_work_item_types_tooltip": "Chưa có loại mục công việc nào được thêm vào quy trình làm việc.", + "no_states_or_work_item_types_tooltip": "Chưa có trạng thái hoặc loại mục công việc nào được thêm vào quy trình làm việc.", + "toast": { + "loading": { + "enabling": "Đang bật quy trình làm việc", + "disabling": "Đang tắt quy trình làm việc" }, - "number_of_cycles": { - "label": "Số chu kỳ tương lai", - "validation": { - "required": "Số chu kỳ là bắt buộc", - "min": "Cần ít nhất 1 chu kỳ", - "max": "Không thể lên lịch nhiều hơn 3 chu kỳ" - } + "success": { + "title": "Thành công!", + "message": "Đã bật quy trình làm việc thành công." }, - "auto_rollover": { - "label": "Tự động chuyển các mục công việc", - "tooltip": "Vào ngày hoàn thành chu kỳ, chuyển tất cả các mục công việc chưa hoàn thành sang chu kỳ tiếp theo." + "error": { + "title": "Lỗi!", + "message": "Không thể bật quy trình làm việc. Vui lòng thử lại." + } + } + }, + "heading": "Quy trình làm việc", + "description": "Tự động hóa việc chuyển đổi mục công việc và đặt quy tắc để kiểm soát cách các nhiệm vụ di chuyển qua luồng dự án của bạn.", + "add_button": "Thêm quy trình làm việc mới", + "search": "Tìm kiếm quy trình làm việc", + "detail": { + "define": "Xác định quy trình làm việc", + "add_states": "Thêm trạng thái", + "unmapped_states": { + "title": "Đã phát hiện trạng thái chưa ánh xạ", + "description": "Một số mục công việc của các loại đã chọn hiện đang ở trạng thái không tồn tại trong quy trình làm việc này.", + "note": "Nếu bạn bật quy trình làm việc này, các mục này sẽ tự động chuyển sang trạng thái ban đầu của quy trình làm việc.", + "label": "Trạng thái bị thiếu", + "tooltip": "Một số mục công việc đang ở trạng thái không được ánh xạ đến quy trình làm việc này. Mở quy trình làm việc để xem xét." + } + }, + "select_states": { + "empty_state": { + "title": "Tất cả trạng thái đang được sử dụng", + "description": "Tất cả trạng thái đã xác định cho dự án này đã có trong quy trình làm việc hiện tại của bạn." + } + }, + "default_footer": { + "fallback_message": "Quy trình làm việc này áp dụng cho bất kỳ loại mục công việc nào không được gán cho một quy trình làm việc." + }, + "create": { + "heading": "Tạo quy trình làm việc mới", + "name": { + "placeholder": "Thêm tên duy nhất", + "validation": { + "max_length": "Tên phải ít hơn 255 ký tự", + "required": "Tên là bắt buộc", + "invalid": "Tên chỉ có thể chứa chữ cái, số, khoảng trắng, dấu gạch nối và dấu nháy đơn" } }, - "toast": { - "toggle": { - "loading_enable": "Đang bật tự động lên lịch chu kỳ", - "loading_disable": "Đang tắt tự động lên lịch chu kỳ", - "success": { - "title": "Thành công!", - "message": "Đã chuyển đổi tự động lên lịch chu kỳ thành công." - }, - "error": { - "title": "Lỗi!", - "message": "Không thể chuyển đổi tự động lên lịch chu kỳ." - } - }, - "save": { - "loading": "Đang lưu cấu hình tự động lên lịch chu kỳ", - "success": { - "title": "Thành công!", - "message_create": "Đã lưu cấu hình tự động lên lịch chu kỳ thành công.", - "message_update": "Đã cập nhật cấu hình tự động lên lịch chu kỳ thành công." - }, - "error": { - "title": "Lỗi!", - "message_create": "Không thể lưu cấu hình tự động lên lịch chu kỳ.", - "message_update": "Không thể cập nhật cấu hình tự động lên lịch chu kỳ." - } + "description": { + "placeholder": "Thêm mô tả ngắn", + "validation": { + "invalid": "Mô tả chỉ có thể chứa chữ cái, số, khoảng trắng, dấu gạch nối và dấu nháy đơn" } + }, + "work_item_type": { + "label": "Loại mục công việc" + }, + "success": { + "title": "Thành công!", + "message": "Đã tạo quy trình làm việc thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể tạo quy trình làm việc. Vui lòng thử lại." + } + }, + "update": { + "success": { + "title": "Thành công!", + "message": "Đã cập nhật quy trình làm việc thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể cập nhật quy trình làm việc. Vui lòng thử lại." + } + }, + "delete": { + "loading": "Đang xóa quy trình làm việc", + "success": { + "title": "Thành công!", + "message": "Đã xóa quy trình làm việc thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể xóa quy trình làm việc. Vui lòng thử lại." + } + }, + "add_states": { + "success": { + "title": "Thành công!", + "message": "Đã thêm trạng thái thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể thêm trạng thái. Vui lòng thử lại." } } }, + "work_item_types": { + "heading": "Loại mục công việc", + "description": "Tạo và tùy chỉnh các loại mục công việc khác nhau với các thuộc tính riêng" + }, "features": { "cycles": { "title": "Chu kỳ", @@ -378,6 +423,103 @@ "description": "Cột mốc cung cấp một lớp để điều chỉnh các mục công việc theo các ngày hoàn thành chung.", "toggle_title": "Bật cột mốc", "toggle_description": "Tổ chức các mục công việc theo thời hạn cột mốc." + }, + "toasts": { + "loading": "Đang cập nhật tính năng dự án...", + "success": "Đã cập nhật tính năng dự án thành công.", + "error": "Đã xảy ra lỗi khi cập nhật tính năng dự án. Vui lòng thử lại." + } + }, + "project_updates": { + "heading": "Cập nhật dự án", + "description": "Theo dõi và giám sát tiến độ được hợp nhất cho dự án này" + }, + "templates": { + "heading": "Mẫu", + "description": "Tiết kiệm 80% thời gian dành cho việc tạo dự án, mục công việc và trang khi bạn sử dụng mẫu." + }, + "cycles": { + "auto_schedule": { + "heading": "Tự động lên lịch chu kỳ", + "description": "Duy trì chu kỳ hoạt động mà không cần thiết lập thủ công.", + "tooltip": "Tự động tạo chu kỳ mới dựa trên lịch trình bạn chọn.", + "edit_button": "Chỉnh sửa", + "form": { + "cycle_title": { + "label": "Tiêu đề chu kỳ", + "placeholder": "Tiêu đề", + "tooltip": "Tiêu đề sẽ được thêm số cho các chu kỳ tiếp theo. Ví dụ: Thiết kế - 1/2/3", + "validation": { + "required": "Tiêu đề chu kỳ là bắt buộc", + "max_length": "Tiêu đề không được vượt quá 255 ký tự" + } + }, + "cycle_duration": { + "label": "Thời lượng chu kỳ", + "unit": "Tuần", + "validation": { + "required": "Thời lượng chu kỳ là bắt buộc", + "min": "Thời lượng chu kỳ phải ít nhất 1 tuần", + "max": "Thời lượng chu kỳ không được vượt quá 30 tuần", + "positive": "Thời lượng chu kỳ phải là số dương" + } + }, + "cooldown_period": { + "label": "Thời gian nghỉ", + "unit": "ngày", + "tooltip": "Khoảng nghỉ giữa các chu kỳ trước khi bắt đầu chu kỳ tiếp theo.", + "validation": { + "required": "Thời gian nghỉ là bắt buộc", + "negative": "Thời gian nghỉ không thể là số âm" + } + }, + "start_date": { + "label": "Ngày bắt đầu chu kỳ", + "validation": { + "required": "Ngày bắt đầu là bắt buộc", + "past": "Ngày bắt đầu không thể ở quá khứ" + } + }, + "number_of_cycles": { + "label": "Số chu kỳ tương lai", + "validation": { + "required": "Số chu kỳ là bắt buộc", + "min": "Cần ít nhất 1 chu kỳ", + "max": "Không thể lên lịch nhiều hơn 3 chu kỳ" + } + }, + "auto_rollover": { + "label": "Tự động chuyển các mục công việc", + "tooltip": "Vào ngày hoàn thành chu kỳ, chuyển tất cả các mục công việc chưa hoàn thành sang chu kỳ tiếp theo." + } + }, + "toast": { + "toggle": { + "loading_enable": "Đang bật tự động lên lịch chu kỳ", + "loading_disable": "Đang tắt tự động lên lịch chu kỳ", + "success": { + "title": "Thành công!", + "message": "Đã chuyển đổi tự động lên lịch chu kỳ thành công." + }, + "error": { + "title": "Lỗi!", + "message": "Không thể chuyển đổi tự động lên lịch chu kỳ." + } + }, + "save": { + "loading": "Đang lưu cấu hình tự động lên lịch chu kỳ", + "success": { + "title": "Thành công!", + "message_create": "Đã lưu cấu hình tự động lên lịch chu kỳ thành công.", + "message_update": "Đã cập nhật cấu hình tự động lên lịch chu kỳ thành công." + }, + "error": { + "title": "Lỗi!", + "message_create": "Không thể lưu cấu hình tự động lên lịch chu kỳ.", + "message_update": "Không thể cập nhật cấu hình tự động lên lịch chu kỳ." + } + } + } } } } diff --git a/packages/i18n/src/locales/vi-VN/project.json b/packages/i18n/src/locales/vi-VN/project.json index 05cc87c5472..5a0388c7760 100644 --- a/packages/i18n/src/locales/vi-VN/project.json +++ b/packages/i18n/src/locales/vi-VN/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "Lưu chế độ xem đã lọc cho dự án của bạn. Tạo bao nhiêu tùy ý", + "description": "Chế độ xem là bộ bộ lọc đã lưu mà bạn thường xuyên sử dụng hoặc muốn truy cập dễ dàng. Tất cả đồng nghiệp trong dự án có thể thấy chế độ xem của mọi người và chọn cái phù hợp nhất với nhu cầu của họ.", + "primary_button": { + "text": "Tạo chế độ xem đầu tiên của bạn", + "comic": { + "title": "Chế độ xem hoạt động dựa trên thuộc tính mục công việc.", + "description": "Bạn có thể tạo chế độ xem ở đây sử dụng bất kỳ số lượng thuộc tính nào làm bộ lọc theo nhu cầu của bạn." + } + }, + "filter": { + "title": "Không có chế độ xem phù hợp", + "description": "Không có chế độ xem phù hợp với tiêu chí tìm kiếm.\n Tạo chế độ xem mới." + } + }, + "no_archived_issues": { + "title": "Chưa có mục công việc đã lưu trữ", + "description": "Thủ công hoặc thông qua tự động hóa, bạn có thể lưu trữ mục công việc đã hoàn thành hoặc đã hủy. Tìm chúng ở đây sau khi lưu trữ.", + "primary_button": { + "text": "Thiết lập tự động hóa" + } + }, + "issues_empty_filter": { + "title": "Không tìm thấy mục công việc nào phù hợp với bộ lọc đã áp dụng", + "secondary_button": { + "text": "Xóa tất cả bộ lọc" + } + }, + "public": { + "title": "Chưa có trang công khai", + "description": "Xem các trang được chia sẻ với mọi người trong dự án của bạn tại đây.", + "primary_button": { + "text": "Tạo trang đầu tiên của bạn" + } + }, + "archived": { + "title": "Chưa có trang đã lưu trữ", + "description": "Lưu trữ các trang không còn trong tầm nhìn của bạn. Truy cập chúng ở đây khi cần." + }, + "shared": { + "title": "Chưa có trang được chia sẻ", + "description": "Các trang mà người khác đã chia sẻ với bạn sẽ xuất hiện ở đây." + } + }, + "delete_view": { + "title": "Bạn có chắc chắn muốn xóa chế độ xem này không?", + "content": "Nếu bạn xác nhận, tất cả các tùy chọn sắp xếp, lọc và hiển thị + bố cục mà bạn đã chọn cho chế độ xem này sẽ bị xóa vĩnh viễn mà không có cách nào khôi phục." + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "Lưu chế độ xem đã lọc cho dự án của bạn. Tạo bao nhiêu tùy ý", - "description": "Chế độ xem là bộ bộ lọc đã lưu mà bạn thường xuyên sử dụng hoặc muốn truy cập dễ dàng. Tất cả đồng nghiệp trong dự án có thể thấy chế độ xem của mọi người và chọn cái phù hợp nhất với nhu cầu của họ.", - "primary_button": { - "text": "Tạo chế độ xem đầu tiên của bạn", - "comic": { - "title": "Chế độ xem hoạt động dựa trên thuộc tính mục công việc.", - "description": "Bạn có thể tạo chế độ xem ở đây sử dụng bất kỳ số lượng thuộc tính nào làm bộ lọc theo nhu cầu của bạn." - } - } - }, - "filter": { - "title": "Không có chế độ xem phù hợp", - "description": "Không có chế độ xem phù hợp với tiêu chí tìm kiếm.\nTạo chế độ xem mới." - } - }, - "delete_view": { - "title": "Bạn có chắc chắn muốn xóa chế độ xem này không?", - "content": "Nếu bạn xác nhận, tất cả các tùy chọn sắp xếp, lọc và hiển thị + bố cục mà bạn đã chọn cho chế độ xem này sẽ bị xóa vĩnh viễn mà không có cách nào khôi phục." - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "Thủ công" } }, + "project_members": { + "full_name": "Họ và tên", + "display_name": "Tên hiển thị", + "email": "Email", + "joining_date": "Ngày tham gia", + "role": "Vai trò" + }, "project": { "members_import": { "title": "Nhập thành viên từ CSV", diff --git a/packages/i18n/src/locales/vi-VN/settings.json b/packages/i18n/src/locales/vi-VN/settings.json index daa3dbb6238..cc7ab0f67b0 100644 --- a/packages/i18n/src/locales/vi-VN/settings.json +++ b/packages/i18n/src/locales/vi-VN/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "Tùy chọn", + "description": "Tùy chỉnh trải nghiệm ứng dụng theo cách bạn làm việc" + }, "notifications": { + "heading": "Thông báo qua email", + "description": "Cập nhật những mục công việc bạn đã đăng ký. Bật tính năng này để nhận thông báo.", "select_default_view": "Chọn chế độ xem mặc định", "compact": "Gọn", "full": "Toàn màn hình" + }, + "security": { + "heading": "Bảo mật" + }, + "api_tokens": { + "title": "Mã truy cập cá nhân", + "description": "Tạo mã API bảo mật để tích hợp dữ liệu của bạn với các hệ thống và ứng dụng bên ngoài." + }, + "activity": { + "heading": "Hoạt động", + "description": "Theo dõi các hành động và thay đổi gần đây của bạn trong tất cả dự án và mục công việc." + }, + "connections": { + "title": "Kết nối", + "heading": "Kết nối", + "description": "Quản lý cài đặt kết nối không gian làm việc của bạn." } }, "profile": { @@ -78,8 +100,9 @@ "profile": "Hồ sơ", "security": "Bảo mật", "activity": "Hoạt động", - "appearance": "Giao diện", + "preferences": "Tùy chọn", "notifications": "Thông báo", + "api-tokens": "Mã truy cập cá nhân", "connections": "Kết nối" }, "tabs": { diff --git a/packages/i18n/src/locales/vi-VN/template.json b/packages/i18n/src/locales/vi-VN/template.json index 570f499fa10..209c77225f4 100644 --- a/packages/i18n/src/locales/vi-VN/template.json +++ b/packages/i18n/src/locales/vi-VN/template.json @@ -3,6 +3,9 @@ "settings": { "title": "Mẫu", "description": "Lưu 80% thời gian đã tiêu tốn trong việc tạo dự án, mục công việc và trang khi bạn sử dụng các mẫu.", + "new_project_template": "Mẫu dự án mới", + "new_work_item_template": "Mẫu mục công việc mới", + "new_page_template": "Mẫu trang mới", "options": { "project": { "label": "Mẫu dự án" @@ -157,6 +160,14 @@ "required": "Cần ít nhất một từ khóa" } }, + "website": { + "label": "URL trang web", + "placeholder": "https://plane.so", + "validation": { + "invalid": "URL không hợp lệ", + "maxLength": "URL không nên vượt quá 800 ký tự" + } + }, "company_name": { "label": "Tên công ty", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "Địa chỉ email không hợp lệ", - "required": "Email hỗ trợ là bắt buộc", "maxLength": "Email hỗ trợ không nên vượt quá 255 ký tự" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": "Chưa có nhãn nào. Tạo nhãn để giúp tổ chức và lọc mục công việc trong dự án của bạn." }, + "no_modules": { + "description": "Chưa có mô-đun nào. Tổ chức công việc thành các dự án phụ với người dẫn đầu và người được phân công chuyên trách." + }, "no_work_items": { "description": "Chưa có mục công việc nào. Thêm một để cấu trúc công việc của bạn tốt hơn." }, diff --git a/packages/i18n/src/locales/vi-VN/tour.json b/packages/i18n/src/locales/vi-VN/tour.json index 1537ab135a7..69e10b6cccd 100644 --- a/packages/i18n/src/locales/vi-VN/tour.json +++ b/packages/i18n/src/locales/vi-VN/tour.json @@ -110,6 +110,12 @@ "description": "Một mục công việc có thể được hoãn lại để xem xét sau. Nó sẽ được di chuyển xuống cuối danh sách yêu cầu mở của bạn." } }, + "mcp_connectors": { + "step_zero": { + "title": "Ngừng chuyển tab. Kết nối thế giới của bạn.", + "description": "Kết nối GitHub, Slack để theo dõi PR và tóm tắt trò chuyện trực tiếp trong Plane AI." + } + }, "navigation": { "modal": { "title": "Điều hướng, được tưởng tượng lại", diff --git a/packages/i18n/src/locales/vi-VN/update.json b/packages/i18n/src/locales/vi-VN/update.json index 170aba9bd58..b84b0c1f3be 100644 --- a/packages/i18n/src/locales/vi-VN/update.json +++ b/packages/i18n/src/locales/vi-VN/update.json @@ -1,11 +1,38 @@ { "updates": { + "progress": { + "title": "Tiến độ", + "since_last_update": "Từ lần cập nhật cuối cùng", + "comments": "{count, plural, one{# bình luận} other{# bình luận}}" + }, "add_update": "Thêm cập nhật", "add_update_placeholder": "Thêm cập nhật của bạn ở đây", "empty": { "title": "Chưa có cập nhật", "description": "Bạn có thể xem cập nhật ở đây." }, + "reaction": { + "create": { + "success": { + "title": "Reaction đã được tạo", + "message": "Reaction đã được tạo thành công." + }, + "error": { + "title": "Không thể tạo reaction", + "message": "Không thể tạo reaction" + } + }, + "remove": { + "success": { + "title": "Reaction đã được xóa", + "message": "Reaction đã được xóa thành công." + }, + "error": { + "title": "Không thể xóa reaction", + "message": "Không thể xóa reaction" + } + } + }, "create": { "success": { "title": "Cập nhật đã được tạo", @@ -16,17 +43,9 @@ "message": "Không thể tạo cập nhật. Vui lòng thử lại!" } }, - "update": { - "success": { - "title": "Cập nhật đã được cập nhật", - "message": "Cập nhật đã được cập nhật thành công." - }, - "error": { - "title": "Không thể cập nhật cập nhật", - "message": "Không thể cập nhật cập nhật. Vui lòng thử lại!" - } - }, "delete": { + "title": "Xóa cập nhật", + "confirmation": "Bạn có chắc chắn muốn xóa cập nhật này? Đây là hành động không thể hoàn tác.", "success": { "title": "Cập nhật đã được xóa", "message": "Cập nhật đã được xóa thành công." @@ -36,24 +55,15 @@ "message": "Không thể xóa cập nhật. Vui lòng thử lại!" } }, - "reaction": { - "create": { - "success": { - "title": "Reaction đã được tạo", - "message": "Reaction đã được tạo thành công." - } + "update": { + "success": { + "title": "Cập nhật đã được cập nhật", + "message": "Cập nhật đã được cập nhật thành công." }, - "remove": { - "success": { - "title": "Reaction đã được xóa", - "message": "Reaction đã được xóa thành công." - } + "error": { + "title": "Không thể cập nhật cập nhật", + "message": "Không thể cập nhật cập nhật. Vui lòng thử lại!" } - }, - "progress": { - "title": "Tiến độ", - "since_last_update": "Từ lần cập nhật cuối cùng", - "comments": "{count, plural, one{# bình luận} other{# bình luận}}" } } } diff --git a/packages/i18n/src/locales/vi-VN/wiki.json b/packages/i18n/src/locales/vi-VN/wiki.json index fd5e6f8fd4f..1eb53123422 100644 --- a/packages/i18n/src/locales/vi-VN/wiki.json +++ b/packages/i18n/src/locales/vi-VN/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "Không thể tạo trang hoặc thêm trang vào bộ sưu tập. Vui lòng thử lại.", "collection_link_copied": "Đã sao chép liên kết bộ sưu tập vào bộ nhớ tạm." } + }, + "wiki": { + "upgrade_flow": { + "title": "Nâng cấp để mở khóa Wiki", + "description": "Mở khóa trang công khai, lịch sử phiên bản, trang được chia sẻ, cộng tác thời gian thực và trang không gian làm việc cho wiki, tài liệu toàn công ty và cơ sở kiến thức với Plane Pro.", + "upgrade_button": { + "text": "Nâng cấp" + }, + "learn_more_button": { + "text": "Tìm hiểu thêm" + }, + "download_button": { + "text": "Tải xuống dữ liệu", + "loading": "Đang tải xuống" + }, + "tabs": { + "nested_pages": "Trang lồng nhau", + "add_embeds": "Thêm nội dung nhúng", + "publish_pages": "Xuất bản trang", + "comments": "Bình luận" + } + }, + "nested_pages_download_banner": { + "title": "Trang lồng nhau yêu cầu gói trả phí. Nâng cấp để mở khóa." + } } } diff --git a/packages/i18n/src/locales/vi-VN/work-item-type.json b/packages/i18n/src/locales/vi-VN/work-item-type.json index bf088027635..2314d1a52e1 100644 --- a/packages/i18n/src/locales/vi-VN/work-item-type.json +++ b/packages/i18n/src/locales/vi-VN/work-item-type.json @@ -3,11 +3,25 @@ "label": "Loại mục công việc", "label_lowercase": "loại mục công việc", "settings": { - "title": "Loại mục công việc", + "description": "Tùy chỉnh và thêm thuộc tính riêng của bạn để điều chỉnh theo nhu cầu của nhóm.", + "cant_delete_default_message": "Không thể xóa loại hạng mục công việc này vì nó đang được liên kết với các hạng mục công việc hiện có.", + "set_as_default": "Đặt làm mặc định", + "cant_set_default_inactive_message": "Kích hoạt loại này trước khi đặt làm mặc định", + "set_default_confirmation": { + "title": "Đặt làm loại hạng mục công việc mặc định", + "description": "Đặt {name} làm mặc định sẽ nhập nó vào tất cả các dự án trong không gian làm việc này. Tất cả hạng mục công việc mới sẽ sử dụng loại này theo mặc định.", + "confirm_button": "Đặt làm mặc định" + }, "properties": { - "title": "Thuộc tính tùy chỉnh", + "title": "Thuộc tính", + "description": "Tạo và tùy chỉnh thuộc tính.", "tooltip": "Mỗi loại mục công việc đi kèm với một bộ thuộc tính mặc định như Tiêu đề, Mô tả, Người được giao, Trạng thái, Ưu tiên, Ngày bắt đầu, Ngày đến hạn, Module, Chu kỳ, v.v. Bạn cũng có thể tùy chỉnh và thêm thuộc tính riêng của mình để phù hợp với nhu cầu của nhóm bạn.", "add_button": "Thêm thuộc tính mới", + "project": { + "add_button": { + "import_from_workspace": "Nhập từ không gian làm việc" + } + }, "dropdown": { "label": "Loại thuộc tính", "placeholder": "Chọn loại" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "Tạo thuộc tính tùy chỉnh mới", + "update": "Cập nhật thuộc tính tùy chỉnh" + }, "form": { "display_name": { "placeholder": "Tiêu đề" @@ -213,9 +231,50 @@ "description": "Các thuộc tính mới bạn thêm cho loại mục công việc này sẽ hiển thị ở đây." } }, + "types": { + "title": "Loại", + "description": "Tạo và tùy chỉnh loại mục công việc với các thuộc tính.", + "sort_options": { + "project_count": "Số lượng dự án sử dụng" + }, + "filter_options": { + "show_active": "Hiển thị đang hoạt động", + "show_inactive": "Hiển thị không hoạt động" + }, + "project": { + "add_button": { + "create_new": "Tạo mới", + "import_from_workspace": "Nhập từ không gian làm việc" + }, + "banner": { + "with_access": "Bật loại mục công việc để nhập các loại từ cấp không gian làm việc", + "without_access": "Loại mục công việc đã bị tắt. Liên hệ quản trị viên không gian làm việc để bật trong cài đặt không gian làm việc." + } + } + }, + "linked_properties": { + "title": "Thuộc tính tùy chỉnh", + "add_button": "Thêm thuộc tính", + "modal": { + "title": "Thêm thuộc tính", + "empty": { + "title": "Không có thuộc tính nào khả dụng", + "description": "Tất cả thuộc tính đã được liên kết với loại này." + } + }, + "unlink_confirmation": { + "title": "Hủy liên kết thuộc tính", + "description": "Việc hủy liên kết thuộc tính này sẽ xóa vĩnh viễn tất cả các giá trị của nó trên mỗi mục công việc sử dụng loại này. Hành động này không thể hoàn tác.", + "input_label": "Nhập", + "input_label_suffix": "để tiếp tục:", + "confirm": "Hủy liên kết thuộc tính", + "loading": "Đang hủy liên kết" + } + }, "item_delete_confirmation": { "title": "Xóa loại này", "description": "Việc xóa các loại có thể dẫn đến mất dữ liệu hiện có.", + "can_disable_warning": "Bạn có muốn tắt loại này thay thế không?", "primary_button": "Vâng, xóa nó", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "Không thể xóa loại mục công việc mặc định", "cannot_delete_work_item_type_with_associated_work_items": "Không thể xóa loại mục công việc có mục công việc liên quan" - }, - "can_disable_warning": "Bạn có muốn tắt loại này thay thế không?" - }, - "cant_delete_default_message": "Không thể xóa loại hạng mục công việc này vì nó đang được liên kết với các hạng mục công việc hiện có.", - "set_as_default": "Đặt làm mặc định", - "cant_set_default_inactive_message": "Kích hoạt loại này trước khi đặt làm mặc định", - "set_default_confirmation": { - "title": "Đặt làm loại hạng mục công việc mặc định", - "description": "Đặt {name} làm mặc định sẽ nhập nó vào tất cả các dự án trong không gian làm việc này. Tất cả hạng mục công việc mới sẽ sử dụng loại này theo mặc định.", - "confirm_button": "Đặt làm mặc định" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "Lỗi!", "message": { + "default": "Không thể tạo loại mục công việc. Vui lòng thử lại!", "conflict": "Loại {name} đã tồn tại. Hãy chọn một tên khác." } } @@ -269,6 +320,7 @@ "error": { "title": "Lỗi!", "message": { + "default": "Không thể cập nhật loại mục công việc. Vui lòng thử lại!", "conflict": "Loại {name} đã tồn tại. Hãy chọn một tên khác." } } @@ -383,25 +435,25 @@ } }, "break_hierarchy_modal": { - "title": "Lỗi xác thực!", + "title": "Lưu sẽ gỡ các liên kết hiện có", "content": { "intro": "Loại mục công việc {workItemTypeName} có:", - "parent_items": "{count, plural, other {mục công việc cha}}", + "parent_items": "{count, plural, other {Sẽ xóa # liên kết cấp cha}}.", "child_items": "{count, plural, other {mục công việc con}}", "parent_line_suffix_when_also_children": ", và ", "footer": "Thay đổi này sẽ gỡ bỏ quan hệ cha-con khỏi các mục công việc hiện có thuộc loại {workItemTypeName}." }, "confirm_input": { - "label": "Nhập \"Xác nhận\" để tiếp tục.", - "placeholder": "Xác nhận" + "label": "Nhập \"xác nhận\" để tiếp tục.", + "placeholder": "xác nhận" }, "error_toast": { "title": "Lỗi!", - "message": "Không thể phá vỡ phân cấp. Vui lòng thử lại." + "message": "Không thể gỡ liên kết và lưu. Vui lòng thử lại." }, "confirm_button": { - "loading": "Đang áp dụng", - "default": "Áp dụng & gỡ liên kết" + "loading": "Đang lưu", + "default": "Vẫn lưu" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/vi-VN/work-item.json b/packages/i18n/src/locales/vi-VN/work-item.json index fa100d42541..848fd48ae34 100644 --- a/packages/i18n/src/locales/vi-VN/work-item.json +++ b/packages/i18n/src/locales/vi-VN/work-item.json @@ -20,6 +20,7 @@ "due_date": "Thêm ngày hết hạn", "parent": "Thêm mục công việc cha", "sub_issue": "Thêm mục công việc con", + "dependency": "Thêm phụ thuộc", "relation": "Thêm mối quan hệ", "link": "Thêm liên kết", "existing": "Thêm mục công việc hiện có" @@ -110,6 +111,43 @@ "copy_link": { "success": "Liên kết bình luận đã được sao chép vào clipboard", "error": "Lỗi khi sao chép liên kết bình luận. Vui lòng thử lại sau." + }, + "replies": { + "create": { + "submit_button": "Thêm trả lời", + "placeholder": "Thêm trả lời" + }, + "toast": { + "fetch": { + "error": { + "message": "Không thể tải các trả lời" + } + }, + "create": { + "success": { + "message": "Đã tạo trả lời thành công" + }, + "error": { + "message": "Không thể tạo trả lời" + } + }, + "update": { + "success": { + "message": "Đã cập nhật trả lời thành công" + }, + "error": { + "message": "Không thể cập nhật trả lời" + } + }, + "delete": { + "success": { + "message": "Đã xóa trả lời thành công" + }, + "error": { + "message": "Không thể xóa trả lời" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "Bỏ chọn tất cả" }, "open_in_full_screen": "Mở mục công việc trong chế độ toàn màn hình", + "duplicate": { + "modal": { + "title": "Tạo một bản sao đến dự án khác", + "description1": "Thao tác này tạo một bản sao của mục công việc.", + "description2": "Tất cả dữ liệu thuộc tính sẽ bị xóa khi sao chép.", + "placeholder": "Chọn một dự án" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "Đã sao chép mục công việc thành công" + }, + "error": { + "message": "Không thể sao chép mục công việc" + } + } + }, + "pages": { + "link_pages": "Liên kết trang", + "show_wiki_pages": "Hiển thị trang Wiki", + "link_pages_to": "Liên kết trang đến", + "linked_pages": "Trang đã liên kết", + "no_description": "Đây là một trang trống. Sao bạn không viết gì đó bên trong và xem nó xuất hiện ở đây giống như phần giữ chỗ này", + "toasts": { + "link": { + "success": { + "title": "Đã cập nhật trang", + "message": "Đã cập nhật trang thành công" + }, + "error": { + "title": "Cập nhật trang thất bại", + "message": "Cập nhật trang thất bại" + } + }, + "remove": { + "success": { + "title": "Đã xóa trang", + "message": "Đã xóa trang thành công" + }, + "error": { + "title": "Xóa trang thất bại", + "message": "Xóa trang thất bại" + } + } + } + }, "vote": { "click_to_upvote": "Nhấp để bỏ phiếu thuận", "click_to_downvote": "Nhấp để bỏ phiếu chống", @@ -241,54 +326,6 @@ "title": "Không thể cập nhật mục công việc", "message": "Thay đổi trạng thái không được phép cho một số mục công việc. Đảm bảo thay đổi trạng thái được cho phép." } - }, - "workflows": { - "toggle": { - "title": "Bật quy trình làm việc", - "description": "Thiết lập quy trình làm việc để kiểm soát việc di chuyển của mục công việc", - "no_states_tooltip": "Chưa có trạng thái nào được thêm vào quy trình làm việc.", - "toast": { - "loading": { - "enabling": "Đang bật quy trình làm việc", - "disabling": "Đang tắt quy trình làm việc" - }, - "success": { - "title": "Thành công!", - "message": "Đã bật quy trình làm việc thành công." - }, - "error": { - "title": "Lỗi!", - "message": "Không thể bật quy trình làm việc. Vui lòng thử lại." - } - } - }, - "heading": "Quy trình làm việc", - "description": "Tự động hóa các chuyển đổi của mục công việc và thiết lập quy tắc để kiểm soát cách các tác vụ di chuyển trong quy trình dự án của bạn.", - "add_button": "Thêm quy trình làm việc mới", - "search": "Tìm kiếm quy trình làm việc", - "detail": { - "define": "Xác định quy trình làm việc", - "add_states": "Thêm trạng thái", - "unmapped_states": { - "title": "Đã phát hiện trạng thái chưa được ánh xạ", - "description": "Một số mục công việc của các loại đã chọn hiện đang ở trong những trạng thái không tồn tại trong quy trình làm việc này.", - "note": "Nếu bạn bật quy trình làm việc này, các mục đó sẽ tự động được chuyển sang trạng thái ban đầu của quy trình làm việc này.", - "label": "Trạng thái bị thiếu", - "tooltip": "Một số mục công việc đang ở trong những trạng thái chưa được ánh xạ tới quy trình làm việc này. Mở quy trình làm việc để xem lại." - } - }, - "select_states": { - "empty_state": { - "title": "Tất cả trạng thái đều đang được sử dụng", - "description": "Tất cả trạng thái được định nghĩa cho dự án này đã có trong quy trình làm việc hiện tại của bạn." - } - }, - "default_footer": { - "fallback_message": "Quy trình làm việc này áp dụng cho bất kỳ loại mục công việc nào chưa được gán cho quy trình làm việc nào." - }, - "create": { - "heading": "Tạo quy trình làm việc mới" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/vi-VN/workspace-settings.json b/packages/i18n/src/locales/vi-VN/workspace-settings.json index 5bcd5ce4ebf..f15c5f27f43 100644 --- a/packages/i18n/src/locales/vi-VN/workspace-settings.json +++ b/packages/i18n/src/locales/vi-VN/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "Thanh toán và Kế hoạch", + "description": "Chọn gói của bạn, quản lý đăng ký và dễ dàng nâng cấp khi nhu cầu của bạn phát triển.", "title": "Thanh toán và Kế hoạch", "current_plan": "Kế hoạch hiện tại", "free_plan": "Bạn đang sử dụng kế hoạch miễn phí", "view_plans": "Xem kế hoạch" }, "exports": { + "heading": "Xuất", + "description": "Xuất dữ liệu dự án của bạn dưới nhiều định dạng và truy cập lịch sử xuất với các liên kết tải xuống.", "title": "Xuất", "exporting": "Đang xuất", "previous_exports": "Xuất trước đây", "export_separate_files": "Xuất dữ liệu thành các tệp riêng biệt", + "exporting_projects": "Đang xuất dự án", + "format": "Định dạng", "filters_info": "Áp dụng bộ lọc để xuất các mục công việc cụ thể dựa trên tiêu chí của bạn.", "modal": { "title": "Xuất đến", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhook", + "description": "Tự động hóa thông báo đến các dịch vụ bên ngoài khi các sự kiện dự án xảy ra.", "title": "Webhooks", "add_webhook": "Thêm webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "Tích hợp", + "heading": "Tích hợp", + "description": "Kết nối với các công cụ và dịch vụ phổ biến để đồng bộ hóa công việc của bạn trong toàn bộ hệ sinh thái quy trình làm việc.", "page_title": "Làm việc với dữ liệu Plane của bạn trong các ứng dụng có sẵn hoặc ứng dụng riêng của bạn.", "page_description": "Xem tất cả các tích hợp được workspace này hoặc bạn đang sử dụng." }, "imports": { - "title": "Nhập dữ liệu" + "title": "Nhập dữ liệu", + "heading": "Nhập", + "description": "Kết nối và nhập dữ liệu từ các công cụ quản lý dự án hiện có của bạn để tinh giản việc tích hợp quy trình làm việc." }, "worklogs": { - "title": "Nhật ký công việc" + "title": "Nhật ký công việc", + "heading": "Nhật ký công việc", + "description": "Tải xuống nhật ký công việc (bảng chấm công) cho bất kỳ ai trong bất kỳ dự án nào." }, "group_syncing": { "title": "Đồng bộ nhóm", @@ -242,7 +256,10 @@ "description": "Cấu hình miền của bạn và bật Đăng nhập một lần" }, "project_states": { - "title": "Trạng thái dự án" + "title": "Trạng thái dự án", + "heading": "Xem tổng quan tiến độ cho tất cả dự án.", + "description": "Trạng thái Dự án là tính năng chỉ có trong Plane để theo dõi tiến độ của tất cả các dự án của bạn theo bất kỳ thuộc tính dự án nào.", + "go_to_settings": "Đi đến cài đặt" }, "projects": { "title": "Dự án", @@ -252,6 +269,16 @@ "labels": "Nhãn dự án" } }, + "templates": { + "title": "Mẫu", + "heading": "Mẫu", + "description": "Tiết kiệm 80% thời gian dành cho việc tạo dự án, mục công việc và trang khi bạn sử dụng mẫu." + }, + "relations": { + "title": "Quan hệ", + "heading": "Quan hệ", + "description": "Tạo và quản lý các loại quan hệ kết nối các mục công việc trong không gian làm việc của bạn." + }, "cancel_trial": { "title": "Hủy bỏ dùng thử trước.", "description": "Bạn đang có gói dùng thử cho một trong các gói trả phí của chúng tôi. Vui lòng hủy nó trước để tiếp tục.", @@ -263,6 +290,7 @@ "cancel_error_message": "Vui lòng thử lại." }, "applications": { + "internal": "Nội bộ", "title": "Ứng dụng", "applicationId_copied": "ID ứng dụng đã được sao chép vào clipboard", "clientId_copied": "ID khách hàng đã được sao chép vào clipboard", @@ -271,10 +299,61 @@ "your_apps": "Ứng dụng của bạn", "connect": "Kết nối", "connected": "Đã kết nối", + "disconnect": "Ngắt kết nối", "install": "Cài đặt", "installed": "Đã cài đặt", "configure": "Cấu hình", "app_available": "Bạn đã làm cho ứng dụng này có sẵn để sử dụng với một workspace Plane", + "app_credentials_regenrated": { + "title": "Thông tin xác thực ứng dụng đã được tạo lại thành công", + "description": "Thay thế client secret ở mọi nơi nó được sử dụng. Secret trước đó không còn hợp lệ." + }, + "app_created": { + "title": "Ứng dụng đã được tạo thành công", + "description": "Sử dụng thông tin xác thực để cài đặt ứng dụng trong không gian làm việc Plane" + }, + "installed_apps": "Ứng dụng đã cài đặt", + "all_apps": "Tất cả ứng dụng", + "internal_apps": "Ứng dụng nội bộ", + "app_name_title": "Bạn sẽ gọi ứng dụng này là gì", + "app_description_title": { + "label": "Mô tả dài", + "placeholder": "Viết mô tả dài cho marketplace. Nhấn '/' để xem lệnh." + }, + "authorization_grant_type": { + "title": "Loại kết nối", + "description": "Chọn liệu ứng dụng của bạn nên được cài đặt một lần cho không gian làm việc hay để mỗi người dùng kết nối tài khoản riêng của họ" + }, + "website": { + "title": "Trang web", + "description": "Liên kết đến trang web của ứng dụng của bạn.", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "Trình tạo ứng dụng", + "description": "Người hoặc tổ chức tạo ra ứng dụng." + }, + "app_maker_error": "Người tạo ứng dụng là bắt buộc", + "setup_url": { + "label": "URL thiết lập", + "description": "Người dùng sẽ được chuyển hướng đến URL này khi họ cài đặt ứng dụng.", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "URL webhook", + "description": "Đây là nơi chúng tôi sẽ gửi các sự kiện và cập nhật webhook từ các workspace nơi ứng dụng của bạn được cài đặt.", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Khóa bí mật Webhook", + "description": "Khóa bí mật được sử dụng để xác minh các yêu cầu webhook đến.", + "placeholder": "Nhập một khóa bí mật ngẫu nhiên" + }, + "redirect_uris": { + "label": "URI chuyển hướng (cách nhau bằng dấu cách)", + "description": "Người dùng sẽ được chuyển hướng đến đường dẫn này sau khi xác thực với Plane.", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "Kết nối một workspace Plane để bắt đầu sử dụng nó", "client_id_and_secret": "ID khách hàng và Secret", "client_id_and_secret_description": "Sao chép và lưu khóa bí mật này trong Pages. Bạn không thể nhìn thấy khóa này lại sau khi bạn đóng.", @@ -286,23 +365,13 @@ "slug_already_exists": "Slug đã tồn tại", "failed_to_create_application": "Không thể tạo ứng dụng", "upload_logo": "Tải lên Logo", - "app_name_title": "Bạn sẽ gọi ứng dụng này là gì", "app_name_error": "Tên ứng dụng là bắt buộc", "app_short_description_title": "Đưa ra một mô tả ngắn cho ứng dụng này", "app_short_description_error": "Mô tả ngắn ứng dụng là bắt buộc", - "app_description_title": { - "label": "Mô tả dài", - "placeholder": "Viết mô tả dài cho marketplace. Nhấn '/' để xem lệnh." - }, - "authorization_grant_type": { - "title": "Loại kết nối", - "description": "Chọn liệu ứng dụng của bạn nên được cài đặt một lần cho không gian làm việc hay để mỗi người dùng kết nối tài khoản riêng của họ" - }, "app_description_error": "Mô tả ứng dụng là bắt buộc", "app_slug_title": "Slug ứng dụng", "app_slug_error": "Slug ứng dụng là bắt buộc", - "app_maker_title": "Người tạo ứng dụng", - "app_maker_error": "Người tạo ứng dụng là bắt buộc", + "invalid_website_error": "Trang web không hợp lệ", "webhook_url_title": "URL Webhook", "webhook_url_error": "URL Webhook là bắt buộc", "invalid_webhook_url_error": "URL Webhook không hợp lệ", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "Nhập các nguồn cách nhau bởi dấu cách mà ứng dụng sẽ được phép thực hiện yêu cầu e.g app.com example.com", "create_app": "Tạo ứng dụng", "update_app": "Cập nhật ứng dụng", + "build_your_own_app": "Tạo ứng dụng của riêng bạn", + "edit_app_details": "Chỉnh sửa chi tiết ứng dụng", "regenerate_client_secret_description": "Tạo lại khóa bí mật. Nếu bạn tạo lại khóa, bạn có thể sao chép khóa hoặc tải xuống nó thành một tệp CSV ngay sau đó.", "regenerate_client_secret": "Tạo lại khóa bí mật", "regenerate_client_secret_confirm_title": "Bạn có chắc chắn muốn tạo lại khóa bí mật?", @@ -362,7 +433,6 @@ "video_url_title": "URL Video", "video_url_error": "URL Video là bắt buộc", "invalid_video_url_error": "URL Video không hợp lệ", - "setup_url_title": "URL Cài đặt", "setup_url_error": "URL Cài đặt là bắt buộc", "invalid_setup_url_error": "URL Cài đặt không hợp lệ", "configuration_url_title": "URL Cấu hình", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "Tệp không hợp lệ hoặc vượt quá giới hạn kích thước ({size} MB)", "uploading": "Đang tải lên...", "upload_and_save": "Tải lên và lưu", - "app_credentials_regenrated": { - "title": "Thông tin xác thực ứng dụng đã được tạo lại thành công", - "description": "Thay thế client secret ở mọi nơi nó được sử dụng. Secret trước đó không còn hợp lệ." - }, - "app_created": { - "title": "Ứng dụng đã được tạo thành công", - "description": "Sử dụng thông tin xác thực để cài đặt ứng dụng trong không gian làm việc Plane" - }, - "installed_apps": "Ứng dụng đã cài đặt", - "all_apps": "Tất cả ứng dụng", - "internal_apps": "Ứng dụng nội bộ", - "website": { - "title": "Trang web", - "description": "Liên kết đến trang web của ứng dụng của bạn.", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "Trình tạo ứng dụng", - "description": "Người hoặc tổ chức tạo ra ứng dụng." - }, - "setup_url": { - "label": "URL thiết lập", - "description": "Người dùng sẽ được chuyển hướng đến URL này khi họ cài đặt ứng dụng.", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "URL webhook", - "description": "Đây là nơi chúng tôi sẽ gửi các sự kiện và cập nhật webhook từ các workspace nơi ứng dụng của bạn được cài đặt.", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "URI chuyển hướng (cách nhau bằng dấu cách)", - "description": "Người dùng sẽ được chuyển hướng đến đường dẫn này sau khi xác thực với Plane.", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "Yêu cầu cài đặt", "app_consent_no_access_description": "Ứng dụng này chỉ có thể được cài đặt sau khi quản trị viên workspace cài đặt nó. Liên hệ với quản trị viên workspace của bạn để tiếp tục.", + "app_consent_unapproved_title": "Ứng dụng này chưa được Plane xem xét hoặc phê duyệt.", + "app_consent_unapproved_description": "Hãy chắc chắn rằng bạn tin tưởng ứng dụng này trước khi kết nối nó với không gian làm việc của bạn.", + "go_to_app": "Đi đến ứng dụng", "enable_app_mentions": "Bật đề cập ứng dụng", "enable_app_mentions_tooltip": "Khi bật tính năng này, người dùng có thể đề cập hoặc gán Work Items cho ứng dụng này.", "scopes": "Phạm vi", @@ -433,15 +472,18 @@ "profile": "Truy cập thông tin hồ sơ người dùng", "agents": "Truy cập vào agents và tất cả các thực thể liên quan đến agent", "assets": "Truy cập vào tài sản và tất cả các thực thể liên quan đến tài sản" - }, - "build_your_own_app": "Tạo ứng dụng của riêng bạn", - "edit_app_details": "Chỉnh sửa chi tiết ứng dụng", - "internal": "Nội bộ" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "Xem công việc của bạn trở nên thông minh và nhanh hơn với AI được kết nối một cách tự nhiên với công việc và cơ sở kiến thức của bạn." + }, + "runners": { + "title": "Plane Runner", + "heading": "Script", + "new_script": "Script mới", + "description": "Tự động hóa quy trình làm việc của bạn với các script và quy tắc tự động hóa tùy chỉnh." } }, "empty_state": { diff --git a/packages/i18n/src/locales/vi-VN/workspace.json b/packages/i18n/src/locales/vi-VN/workspace.json index ba466656fe0..4b7418d7d9f 100644 --- a/packages/i18n/src/locales/vi-VN/workspace.json +++ b/packages/i18n/src/locales/vi-VN/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "Phạm vi và nhu cầu", "custom": "Phân tích tùy chỉnh" }, + "total": "Tổng số {entity}", + "started_work_items": "{entity} đã bắt đầu", + "backlog_work_items": "{entity} tồn đọng", + "un_started_work_items": "{entity} chưa bắt đầu", + "completed_work_items": "{entity} đã hoàn thành", + "project_insights": "Thông tin chi tiết dự án", + "summary_of_projects": "Tóm tắt dự án", + "all_projects": "Tất cả dự án", + "trend_on_charts": "Xu hướng trên biểu đồ", + "active_projects": "Dự án đang hoạt động", + "customized_insights": "Thông tin chi tiết tùy chỉnh", + "created_vs_resolved": "Đã tạo vs Đã giải quyết", "empty_state": { - "customized_insights": { - "description": "Các hạng mục công việc được giao cho bạn, phân loại theo trạng thái, sẽ hiển thị tại đây.", - "title": "Chưa có dữ liệu" + "project_insights": { + "title": "Chưa có dữ liệu", + "description": "Các hạng mục công việc được giao cho bạn, phân loại theo trạng thái, sẽ hiển thị tại đây." }, "created_vs_resolved": { - "description": "Các hạng mục công việc được tạo và giải quyết theo thời gian sẽ hiển thị tại đây.", - "title": "Chưa có dữ liệu" + "title": "Chưa có dữ liệu", + "description": "Các hạng mục công việc được tạo và giải quyết theo thời gian sẽ hiển thị tại đây." }, - "project_insights": { + "customized_insights": { "title": "Chưa có dữ liệu", "description": "Các hạng mục công việc được giao cho bạn, phân loại theo trạng thái, sẽ hiển thị tại đây." }, @@ -132,29 +144,11 @@ "description": "Phân tích xu hướng intake sẽ hiển thị ở đây. Thêm các hạng mục công việc vào intake để bắt đầu theo dõi xu hướng." } }, - "created_vs_resolved": "Đã tạo vs Đã giải quyết", - "customized_insights": "Thông tin chi tiết tùy chỉnh", - "backlog_work_items": "{entity} tồn đọng", - "active_projects": "Dự án đang hoạt động", - "trend_on_charts": "Xu hướng trên biểu đồ", - "all_projects": "Tất cả dự án", - "summary_of_projects": "Tóm tắt dự án", - "project_insights": "Thông tin chi tiết dự án", - "started_work_items": "{entity} đã bắt đầu", - "total_work_items": "Tổng số {entity}", - "total_projects": "Tổng số dự án", - "total_admins": "Tổng số quản trị viên", - "total_users": "Tổng số người dùng", - "total_intake": "Tổng thu", - "un_started_work_items": "{entity} chưa bắt đầu", - "total_guests": "Tổng số khách", - "completed_work_items": "{entity} đã hoàn thành", - "total": "Tổng số {entity}", + "upgrade_to_plan": "Nâng cấp lên {plan} để mở khóa {tab}", + "workitem_resolved_vs_pending": "Mục công việc đã giải quyết vs đang chờ", "projects_by_status": "Dự án theo trạng thái", "active_users": "Người dùng hoạt động", - "intake_trends": "Xu hướng tiếp nhận", - "workitem_resolved_vs_pending": "Mục công việc đã giải quyết vs đang chờ", - "upgrade_to_plan": "Nâng cấp lên {plan} để mở khóa {tab}" + "intake_trends": "Xu hướng tiếp nhận" }, "workspace_projects": { "label": "{count, plural, one {dự án} other {dự án}}", @@ -162,6 +156,7 @@ "label": "Thêm dự án" }, "network": { + "label": "Mạng", "private": { "title": "Riêng tư", "description": "Chỉ truy cập bằng lời mời" @@ -317,6 +312,10 @@ "archived": { "title": "Chưa có trang đã lưu trữ", "description": "Lưu trữ các trang không nằm trong tầm nhìn của bạn. Truy cập chúng ở đây khi cần thiết." + }, + "shared": { + "title": "Chưa có trang được chia sẻ", + "description": "Các trang mà người khác đã chia sẻ với bạn sẽ xuất hiện ở đây." } } }, diff --git a/packages/i18n/src/locales/zh-CN/auth.json b/packages/i18n/src/locales/zh-CN/auth.json index 77651545c54..1fc6f70571f 100644 --- a/packages/i18n/src/locales/zh-CN/auth.json +++ b/packages/i18n/src/locales/zh-CN/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "邮箱", - "placeholder": "name@company.com", - "errors": { - "required": "邮箱是必填项", - "invalid": "邮箱格式无效" - } - }, - "password": { - "label": "密码", - "set_password": "设置密码", - "placeholder": "输入密码", - "confirm_password": { - "label": "确认密码", - "placeholder": "确认密码" - }, - "current_password": { - "label": "当前密码" - }, - "new_password": { - "label": "新密码", - "placeholder": "输入新密码" - }, - "change_password": { - "label": { - "default": "修改密码", - "submitting": "正在修改密码" - } - }, - "errors": { - "match": "密码不匹配", - "empty": "请输入密码", - "length": "密码长度应超过8个字符", - "strength": { - "weak": "密码强度较弱", - "strong": "密码强度较强" - } - }, - "submit": "设置密码", - "toast": { - "change_password": { - "success": { - "title": "成功!", - "message": "密码修改成功。" - }, - "error": { - "title": "错误!", - "message": "出现错误。请重试。" - } - } - } - }, - "unique_code": { - "label": "唯一码", - "placeholder": "123456", - "paste_code": "粘贴发送到您邮箱的验证码", - "requesting_new_code": "正在请求新验证码", - "sending_code": "正在发送验证码" - }, - "already_have_an_account": "已有账号?", - "login": "登录", - "create_account": "创建账号", - "new_to_plane": "首次使用 Plane?", - "back_to_sign_in": "返回登录", - "resend_in": "{seconds} 秒后重新发送", - "sign_in_with_unique_code": "使用唯一码登录", - "forgot_password": "忘记密码?", - "username": { - "label": "用户名", - "placeholder": "请输入您的用户名" - } - }, - "sign_up": { - "header": { - "label": "创建账号以开始与团队一起管理工作。", - "step": { - "email": { - "header": "注册", - "sub_header": "" - }, - "password": { - "header": "注册", - "sub_header": "使用邮箱-密码组合注册。" - }, - "unique_code": { - "header": "注册", - "sub_header": "使用发送到上述邮箱的唯一码注册。" - } - } - }, - "errors": { - "password": { - "strength": "请设置一个强密码以继续" - } - } - }, - "sign_in": { - "header": { - "label": "登录以开始与团队一起管理工作。", - "step": { - "email": { - "header": "登录或注册", - "sub_header": "" - }, - "password": { - "header": "登录或注册", - "sub_header": "使用您的邮箱-密码组合登录。" - }, - "unique_code": { - "header": "登录或注册", - "sub_header": "使用发送到上述邮箱的唯一码登录。" - } - } - } - }, - "forgot_password": { - "title": "重置密码", - "description": "输入您的用户账号已验证的邮箱地址,我们将向您发送密码重置链接。", - "email_sent": "我们已将重置链接发送到您的邮箱", - "send_reset_link": "发送重置链接", - "errors": { - "smtp_not_enabled": "我们发现您的管理员未启用 SMTP,我们将无法发送密码重置链接" - }, - "toast": { - "success": { - "title": "邮件已发送", - "message": "请查看您的收件箱以获取重置密码的链接。如果几分钟内未收到,请检查垃圾邮件文件夹。" - }, - "error": { - "title": "错误!", - "message": "出现错误。请重试。" - } - } - }, - "reset_password": { - "title": "设置新密码", - "description": "使用强密码保护您的账号" - }, - "set_password": { - "title": "保护您的账号", - "description": "设置密码有助于您安全登录" - }, - "sign_out": { - "toast": { - "error": { - "title": "错误!", - "message": "登出失败。请重试。" - } - } - }, - "ldap": { - "header": { - "label": "使用 {ldapProviderName} 继续", - "sub_header": "请输入您的 {ldapProviderName} 凭据" - } - } - }, "sso": { "header": "身份", "description": "配置您的域名以访问安全功能,包括单点登录。", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "邮箱", + "placeholder": "name@company.com", + "errors": { + "required": "邮箱是必填项", + "invalid": "邮箱格式无效" + } + }, + "password": { + "label": "密码", + "set_password": "设置密码", + "placeholder": "输入密码", + "confirm_password": { + "label": "确认密码", + "placeholder": "确认密码" + }, + "current_password": { + "label": "当前密码" + }, + "new_password": { + "label": "新密码", + "placeholder": "输入新密码" + }, + "change_password": { + "label": { + "default": "修改密码", + "submitting": "正在修改密码" + } + }, + "errors": { + "match": "密码不匹配", + "empty": "请输入密码", + "length": "密码长度应超过8个字符", + "strength": { + "weak": "密码强度较弱", + "strong": "密码强度较强" + } + }, + "submit": "设置密码", + "toast": { + "change_password": { + "success": { + "title": "成功!", + "message": "密码修改成功。" + }, + "error": { + "title": "错误!", + "message": "出现错误。请重试。" + } + } + } + }, + "unique_code": { + "label": "唯一码", + "placeholder": "123456", + "paste_code": "粘贴发送到您邮箱的验证码", + "requesting_new_code": "正在请求新验证码", + "sending_code": "正在发送验证码" + }, + "already_have_an_account": "已有账号?", + "login": "登录", + "create_account": "创建账号", + "new_to_plane": "首次使用 Plane?", + "back_to_sign_in": "返回登录", + "resend_in": "{seconds} 秒后重新发送", + "sign_in_with_unique_code": "使用唯一码登录", + "forgot_password": "忘记密码?", + "username": { + "label": "用户名", + "placeholder": "请输入您的用户名" + } + }, + "sign_up": { + "header": { + "label": "创建账号以开始与团队一起管理工作。", + "step": { + "email": { + "header": "注册", + "sub_header": "" + }, + "password": { + "header": "注册", + "sub_header": "使用邮箱-密码组合注册。" + }, + "unique_code": { + "header": "注册", + "sub_header": "使用发送到上述邮箱的唯一码注册。" + } + } + }, + "errors": { + "password": { + "strength": "请设置一个强密码以继续" + } + } + }, + "sign_in": { + "header": { + "label": "登录以开始与团队一起管理工作。", + "step": { + "email": { + "header": "登录或注册", + "sub_header": "" + }, + "password": { + "header": "登录或注册", + "sub_header": "使用您的邮箱-密码组合登录。" + }, + "unique_code": { + "header": "登录或注册", + "sub_header": "使用发送到上述邮箱的唯一码登录。" + } + } + } + }, + "forgot_password": { + "title": "重置密码", + "description": "输入您的用户账号已验证的邮箱地址,我们将向您发送密码重置链接。", + "email_sent": "我们已将重置链接发送到您的邮箱", + "send_reset_link": "发送重置链接", + "errors": { + "smtp_not_enabled": "我们发现您的管理员未启用 SMTP,我们将无法发送密码重置链接" + }, + "toast": { + "success": { + "title": "邮件已发送", + "message": "请查看您的收件箱以获取重置密码的链接。如果几分钟内未收到,请检查垃圾邮件文件夹。" + }, + "error": { + "title": "错误!", + "message": "出现错误。请重试。" + } + } + }, + "reset_password": { + "title": "设置新密码", + "description": "使用强密码保护您的账号" + }, + "set_password": { + "title": "保护您的账号", + "description": "设置密码有助于您安全登录" + }, + "sign_out": { + "toast": { + "error": { + "title": "错误!", + "message": "登出失败。请重试。" + } + } + }, + "ldap": { + "header": { + "label": "使用 {ldapProviderName} 继续", + "sub_header": "请输入您的 {ldapProviderName} 凭据" + } + } } } diff --git a/packages/i18n/src/locales/zh-CN/automation.json b/packages/i18n/src/locales/zh-CN/automation.json index a01cb7a4929..3f057bdf93f 100644 --- a/packages/i18n/src/locales/zh-CN/automation.json +++ b/packages/i18n/src/locales/zh-CN/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "返回", "next": "添加操作" + }, + "warning": { + "disabled_trigger_switching": "创建后无法更改触发器类型" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "选择一个选项", "handler_name": { "add_comment": "添加评论", - "change_property": "更改属性" + "change_property": "更改属性", + "run_script": "运行脚本" }, "configuration": { "label": "配置", @@ -89,6 +93,9 @@ "comment_block": { "title": "添加评论" }, + "run_script_block": { + "title": "运行脚本" + }, "change_property_block": { "title": "更改属性" }, @@ -115,6 +122,8 @@ }, "table": { "title": "自动化标题", + "scope": "范围", + "projects": "项目", "last_run_on": "最后运行时间", "created_on": "创建时间", "last_updated_on": "最后更新时间", @@ -230,6 +239,35 @@ "description": "自动化是在您的项目中自动执行任务的方式。", "sub_description": "使用自动化可以节省80%的管理时间。" } + }, + "global_automations": { + "project_select": { + "label": "选择要运行此自动化的项目", + "all_projects": { + "label": "所有项目", + "description": "自动化将在工作区的所有项目中运行。" + }, + "select_projects": { + "label": "选择项目", + "description": "自动化将在工作区中所选的项目中运行。", + "placeholder": "选择项目" + } + }, + "settings": { + "sidebar_label": "自动化", + "title": "自动化", + "description": "通过全局自动化标准化工作区中的流程。" + }, + "table": { + "scope": { + "global": "全局", + "project": { + "label": "项目", + "multiple": "多个", + "all": "全部" + } + } + } } } } diff --git a/packages/i18n/src/locales/zh-CN/common.json b/packages/i18n/src/locales/zh-CN/common.json index 9cda0417c19..dd67d925a07 100644 --- a/packages/i18n/src/locales/zh-CN/common.json +++ b/packages/i18n/src/locales/zh-CN/common.json @@ -17,6 +17,7 @@ "no": "否", "ok": "确定", "name": "名称", + "unknown_user": "未知用户", "description": "描述", "search": "搜索", "add_member": "添加成员", @@ -56,7 +57,8 @@ "no_worklogs": "暂无工时记录", "no_history": "暂无历史记录" }, - "appearance": "外观", + "preferences": "偏好设置", + "language_and_time": "语言和时间", "notifications": "通知", "workspaces": "工作区", "create_workspace": "创建工作区", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "出现错误。请重试。", "load_more": "加载更多", "select_or_customize_your_interface_color_scheme": "选择或自定义您的界面配色方案。", + "timezone_setting": "当前时区设置。", + "language_setting": "选择用户界面使用的语言。", + "settings_moved_to_preferences": "时区和语言设置已移至偏好设置。", + "go_to_preferences": "前往偏好设置", "select_the_cursor_motion_style_that_feels_right_for_you": "选择适合您的光标移动样式。", "theme": "主题", "smooth_cursor": "平滑光标", @@ -163,6 +169,7 @@ "project_created_successfully": "项目创建成功", "project_created_successfully_description": "项目创建成功。您现在可以开始添加工作项了。", "project_name_already_taken": "项目名称已被使用。", + "project_name_cannot_contain_special_characters": "项目名称不能包含特殊字符。", "project_identifier_already_taken": "项目标识符已被使用。", "project_cover_image_alt": "项目封面图片", "name_is_required": "名称为必填项", @@ -207,6 +214,7 @@ "issues": "工作项", "cycles": "周期", "modules": "模块", + "pages": "页面", "intake": "收集", "renew": "更新", "preview": "预览", @@ -298,6 +306,7 @@ "start_date": "开始日期", "end_date": "结束日期", "due_date": "截止日期", + "target_date": "目标日期", "estimate": "估算", "change_parent_issue": "更改父工作项", "remove_parent_issue": "移除父工作项", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "新密码必须不同于旧密码", "edited": "已编辑", "bot": "机器人", + "settings_description": "一站式管理您的账户、工作区和项目偏好设置。在各个标签页之间切换,轻松进行配置。", + "back_to_workspace": "返回工作区", "upgrade_request": "请联系工作区管理员升级。", "copied_to_clipboard": "已复制到剪贴板", "copied_to_clipboard_description": "URL 已成功复制到您的剪贴板", @@ -422,6 +433,9 @@ "modules": "模块", "labels": "标签", "label": "标签", + "admins": "管理员", + "users": "用户", + "guests": "访客", "assignees": "负责人", "assignee": "负责人", "created_by": "创建者", @@ -451,6 +465,8 @@ "work_item": "工作项", "work_items": "工作项", "sub_work_item": "子工作项", + "views": "视图", + "pages": "页面", "add": "添加", "warning": "警告", "updating": "更新中", @@ -496,7 +512,7 @@ "workspace_level": "工作区级别", "order_by": { "label": "排序方式", - "manual": "手动", + "manual": "手动 - 排名", "last_created": "最近创建", "last_updated": "最近更新", "start_date": "开始日期", @@ -532,6 +548,7 @@ "continue": "继续", "resend": "重新发送", "relations": "关系", + "dependencies": "依赖关系", "errors": { "default": { "title": "错误!", @@ -563,11 +580,27 @@ "quarter": "季度", "press_for_commands": "按'/'使用命令", "click_to_add_description": "点击添加描述", + "on_track": "进展顺利", + "off_track": "偏离轨道", + "at_risk": "有风险", + "timeline": "时间轴", + "completion": "完成", + "upcoming": "即将发生", + "completed": "已完成", + "in_progress": "进行中", + "planned": "已计划", + "paused": "暂停", "search": { "label": "搜索", "placeholder": "输入搜索内容", "no_matches_found": "未找到匹配项", - "no_matching_results": "没有匹配的结果" + "no_matching_results": "没有匹配的结果", + "min_chars": "至少输入 {count} 个字符进行搜索", + "error": "获取搜索结果时出错", + "no_results": { + "title": "没有匹配的结果", + "description": "移除搜索条件以查看所有结果" + } }, "actions": { "edit": "编辑", @@ -576,6 +609,7 @@ "copy_link": "复制链接", "copy_branch_name": "复制分支名称", "archive": "归档", + "restore": "恢复", "delete": "删除", "remove_relation": "移除关系", "subscribe": "订阅", @@ -583,7 +617,9 @@ "clear_sorting": "清除排序", "show_weekends": "显示周末", "enable": "启用", - "disable": "禁用" + "disable": "禁用", + "copy_markdown": "复制Markdown", + "reply": "回复" }, "name": "名称", "discard": "放弃", @@ -596,6 +632,7 @@ "disabled": "已禁用", "mandate": "授权", "mandatory": "必需的", + "global": "全局", "yes": "是", "no": "否", "please_wait": "请稍候", @@ -605,6 +642,7 @@ "or": "或", "next": "下一步", "back": "返回", + "retry": "重试", "cancelling": "正在取消", "configuring": "正在配置", "clear": "清除", @@ -659,30 +697,27 @@ "deactivated_user": "已停用用户", "apply": "应用", "applying": "应用中", - "users": "用户", - "admins": "管理员", - "guests": "访客", - "on_track": "进展顺利", - "off_track": "偏离轨道", - "at_risk": "有风险", - "timeline": "时间轴", - "completion": "完成", - "upcoming": "即将发生", - "completed": "已完成", - "in_progress": "进行中", - "planned": "已计划", - "paused": "暂停", + "overview": "概览", "no_of": "{entity} 的数量", "resolved": "已解决", + "get_started": "开始使用", "worklogs": "工作日志", "project_updates": "项目更新", - "overview": "概览", "workflows": "工作流", + "templates": "模板", + "business": "商业", "members_and_teamspaces": "成员和团队空间", + "recurring_work_items": "重复工作项", + "milestones": "里程碑", "open_in_full_screen": "在全屏中打开{page}", "details": "详情", "project_structure": "项目结构", - "custom_properties": "自定义属性" + "custom_properties": "自定义属性", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "X轴", @@ -788,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane 未能启动。这可能是因为一个或多个 Plane 服务启动失败。", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "请选择“查看日志”来查看 setup.sh 和 Docker 日志,以确认问题。" }, + "customize_navigation": "自定义导航", + "personal": "个人", + "accordion_navigation_control": "折叠侧边栏导航", + "horizontal_navigation_bar": "标签式导航", + "show_limited_projects_on_sidebar": "在侧边栏显示有限数量的项目", + "enter_number_of_projects": "输入项目数量", + "pin": "置顶", + "unpin": "取消置顶", "workspace_dashboards": "仪表板", "pi_chat": "AI 聊天", "in_app": "应用内", "forms": "表单", - "choose_workspace_for_integration": "选择工作区以连接此应用程序", - "integrations_description": "与 Plane 一起工作的应用程序必须连接到您是管理员的工作区", - "create_a_new_workspace": "创建新的工作区", - "learn_more_about_workspaces": "了解更多关于工作区的信息", - "no_workspaces_to_connect": "没有工作区可连接", - "no_workspaces_to_connect_description": "您需要创建工作区才能连接此应用程序", + "milestones": "里程碑", + "milestones_description": "里程碑提供了一层结构,用于将工作项对齐到共同的完成日期。", "file_upload": { "upload_text": "点击此处上传文件", "drag_drop_text": "拖放", "processing": "处理中", - "invalid": "无效的文件类型", + "invalid_file_type": "无效的文件类型", "missing_fields": "缺少字段", "success": "{fileName} 已上传!" }, - "project_name_cannot_contain_special_characters": "项目名称不能包含特殊字符。", "date": "日期", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/zh-CN/editor.json b/packages/i18n/src/locales/zh-CN/editor.json index 2cae1bcb25f..418274f1708 100644 --- a/packages/i18n/src/locales/zh-CN/editor.json +++ b/packages/i18n/src/locales/zh-CN/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "请输入有效的 URL。" } + }, + "ai_block": { + "content": { + "placeholder": "描述此块的内容", + "generated_here": "您的 AI 内容将在此处生成" + }, + "block_types": { + "placeholder": "选择块类型", + "summarize_page": "总结页面", + "custom_prompt": "自定义提示" + }, + "actions": { + "discard": "放弃", + "generate": "生成", + "generating": "生成中", + "rewriting": "重写中", + "rewrite": "重写", + "use_this": "使用此", + "refine": "优化" + } } } diff --git a/packages/i18n/src/locales/zh-CN/empty-state.json b/packages/i18n/src/locales/zh-CN/empty-state.json index 8d9dd16c325..6dd470411e9 100644 --- a/packages/i18n/src/locales/zh-CN/empty-state.json +++ b/packages/i18n/src/locales/zh-CN/empty-state.json @@ -249,10 +249,22 @@ "title": "跟踪所有成员的工时表", "description": "在工作项上记录时间以查看跨项目任何团队成员的详细工时表。" }, + "group_syncing": { + "title": "暂无组映射" + }, "template_setting": { "title": "暂无模板", "description": "通过为项目、工作项和页面创建模板来减少设置时间 — 并在几秒钟内开始新工作。", "cta_primary": "创建模板" + }, + "workflows": { + "title": "暂无工作流", + "description": "创建工作流以管理工作项的进度。", + "cta_primary": "添加新工作流", + "states": { + "title": "添加状态", + "description": "选择工作项推进过程中经历的状态。" + } } } } diff --git a/packages/i18n/src/locales/zh-CN/integration.json b/packages/i18n/src/locales/zh-CN/integration.json index d355e4eb50a..3ea1da42116 100644 --- a/packages/i18n/src/locales/zh-CN/integration.json +++ b/packages/i18n/src/locales/zh-CN/integration.json @@ -194,6 +194,10 @@ "server_error_states": "加载状态时服务器错误" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "将您的 Bitbucket Data Center 仓库与 Plane 连接并同步。" + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "验证外部 IdP 令牌以进行 API 访问。", @@ -302,10 +306,10 @@ "generic_error": "处理您的请求时发生意外错误", "connection_not_found": "找不到请求的连接", "multiple_connections_found": "找到多个连接,但只期望一个", + "cannot_create_multiple_connections": "您已经将组织连接到工作区。请在连接新组织之前断开现有连接。", "installation_not_found": "找不到请求的安装", "user_not_found": "找不到请求的用户", "error_fetching_token": "获取身份验证令牌失败", - "cannot_create_multiple_connections": "您已经将组织连接到工作区。请在连接新组织之前断开现有连接。", "invalid_app_credentials": "提供的应用凭证无效", "invalid_app_installation_id": "安装应用失败" }, @@ -316,6 +320,7 @@ "pulling": "拉取中", "timed_out": "超时", "pulled": "已拉取", + "progressing": "进行中", "transforming": "转换中", "transformed": "已转换", "pushing": "推送中", diff --git a/packages/i18n/src/locales/zh-CN/module.json b/packages/i18n/src/locales/zh-CN/module.json index 92276c9ac01..37eac535045 100644 --- a/packages/i18n/src/locales/zh-CN/module.json +++ b/packages/i18n/src/locales/zh-CN/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {模块} other {模块}}", - "no_module": "无模块" + "no_module": "无模块", + "select": "添加模块" } } diff --git a/packages/i18n/src/locales/zh-CN/navigation.json b/packages/i18n/src/locales/zh-CN/navigation.json index f651f334e3c..0fe15a360bf 100644 --- a/packages/i18n/src/locales/zh-CN/navigation.json +++ b/packages/i18n/src/locales/zh-CN/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "未找到结果" + } + } + }, "sidebar": { + "stickies": "便签", + "your_work": "我的工作", "projects": "项目", "pages": "页面", "new_work_item": "新工作项", "home": "主页", - "your_work": "我的工作", "inbox": "收件箱", "workspace": "工作区", "views": "视图", @@ -21,14 +29,6 @@ "epics": "史诗", "upgrade_plan": "升级计划", "plane_pro": "Plane Pro", - "business": "商业版", - "recurring_work_items": "重复工作项" - }, - "command_k": { - "empty_state": { - "search": { - "title": "未找到结果" - } - } + "business": "商业版" } } diff --git a/packages/i18n/src/locales/zh-CN/page.json b/packages/i18n/src/locales/zh-CN/page.json index 26616ecc973..aab6a25cd85 100644 --- a/packages/i18n/src/locales/zh-CN/page.json +++ b/packages/i18n/src/locales/zh-CN/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "连接页面", - "show_wiki_pages": "显示 Wiki 页面", - "link_pages_to": "连接页面到", - "linked_pages": "连接的页面", - "no_description": "此页面为空。在此输入一些内容,并在此处查看此占位符", - "toasts": { - "link": { - "success": { - "title": "页面已更新", - "message": "页面已成功更新" - }, - "error": { - "title": "页面未更新", - "message": "页面无法更新" - } - }, - "remove": { - "success": { - "title": "页面已删除", - "message": "页面已成功删除" - }, - "error": { - "title": "页面未删除", - "message": "页面无法删除" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "缺少图片", "description": "添加图片以在这里查看它们。" } + }, + "comments": { + "label": "评论", + "empty_state": { + "title": "暂无评论", + "description": "添加评论以在此处查看。" + } + } + }, + "toasts": { + "errors": { + "wrong_name": "便签名称不能超过 100 个字符。", + "already_exists": "已存在一个没有描述的便签" + }, + "created": { + "title": "便签已创建", + "message": "便签已成功创建" + }, + "not_created": { + "title": "便签未创建", + "message": "无法创建便签" + }, + "updated": { + "title": "便签已更新", + "message": "便签已成功更新" + }, + "not_updated": { + "title": "便签未更新", + "message": "无法更新便签" + }, + "removed": { + "title": "便签已移除", + "message": "便签已成功移除" + }, + "not_removed": { + "title": "便签未移除", + "message": "无法移除便签" } }, "open_button": "打开导航面板", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "移动", + "loading": "正在移动" + }, + "cannot_move_to_teamspace": "私有和共享页面无法移动到团队空间。", "placeholders": { + "workspace_to_all": "搜索项目和团队空间", + "workspace_to_project": "搜索项目", + "project_to_all": "搜索项目和团队空间", + "project_to_project": "搜索项目", "project_to_all_with_wiki": "搜索 Wiki 集合、项目和团队空间", "project_to_project_with_wiki": "搜索 Wiki 集合和项目" }, "toasts": { + "success": { + "title": "成功!", + "message": "页面移动成功。" + }, + "error": { + "title": "错误!", + "message": "无法移动页面。请稍后重试。" + }, "collection_error": { "title": "已移动到 Wiki", "message": "页面已移动到 Wiki,但无法添加到所选集合中。它会保留在 General 中。" diff --git a/packages/i18n/src/locales/zh-CN/project-settings.json b/packages/i18n/src/locales/zh-CN/project-settings.json index 2c07036db04..594502dfa19 100644 --- a/packages/i18n/src/locales/zh-CN/project-settings.json +++ b/packages/i18n/src/locales/zh-CN/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "成员", "project_lead": "项目负责人", + "project_lead_description": "请选择该项目的项目负责人。", "default_assignee": "默认受理人", + "default_assignee_description": "请选择该项目的默认指派人。", + "project_subscribers": "项目订阅者", + "project_subscribers_description": "请选择将接收该项目通知的成员。", "guest_super_permissions": { "title": "为访客用户授予查看所有工作项的权限:", "sub_heading": "这将允许访客查看所有项目工作项。" @@ -30,13 +34,11 @@ "title": "邀请成员", "sub_heading": "邀请成员参与您的项目。", "select_co_worker": "选择同事" - }, - "project_lead_description": "请选择该项目的项目负责人。", - "default_assignee_description": "请选择该项目的默认指派人。", - "project_subscribers": "项目订阅者", - "project_subscribers_description": "请选择将接收该项目通知的成员。" + } }, "states": { + "heading": "状态", + "description": "定义和自定义工作流状态以跟踪工作项的进度。", "describe_this_state_for_your_members": "为您的成员描述此状态。", "empty_state": { "title": "{groupKey} 组中没有状态", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "标签", + "description": "创建自定义标签以分类和组织您的工作项", "label_title": "标签标题", "label_title_is_required": "标签标题为必填项", "label_max_char": "标签名称不应超过255个字符", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "估算", + "description": "设置估算系统以跟踪和传达每个工作项所需的工作量。", "label": "估算", "title": "为我的项目启用估算", - "description": "它们有助于您传达团队的复杂性和工作量。", + "enable_description": "它们有助于您传达团队的复杂性和工作量。", "no_estimate": "无估算", "new": "新估算系统", "create": { @@ -112,6 +118,16 @@ "title": "估算重新排序失败", "message": "我们无法重新排序估算,请重试" } + }, + "switch": { + "success": { + "title": "估算系统已创建", + "message": "创建并启用成功" + }, + "error": { + "title": "错误", + "message": "出现错误" + } } }, "validation": { @@ -126,6 +142,25 @@ "fill": "请填写此估算字段", "repeat": "估算值不能重复" }, + "systems": { + "points": { + "label": "点数", + "fibonacci": "斐波那契", + "linear": "线性", + "squares": "平方", + "custom": "自定义" + }, + "categories": { + "label": "类别", + "t_shirt_sizes": "T恤尺码", + "easy_to_hard": "简单到困难", + "custom": "自定义" + }, + "time": { + "label": "时间", + "hours": "小时" + } + }, "edit": { "title": "编辑估算系统", "add_or_update": { @@ -143,6 +178,8 @@ }, "automations": { "label": "自动化", + "heading": "自动化", + "description": "配置自动化操作以简化项目管理工作流并减少手动任务。", "auto-archive": { "title": "自动归档已关闭的工作项", "description": "Plane 将自动归档已完成或已取消的工作项。", @@ -175,90 +212,116 @@ "description": "配置 GitHub 和其他集成以同步您的项目工作项。" } }, - "cycles": { - "auto_schedule": { - "heading": "自动安排周期", - "description": "无需手动设置即可保持周期运行。", - "tooltip": "根据您选择的计划自动创建新周期。", - "edit_button": "编辑", - "form": { - "cycle_title": { - "label": "周期标题", - "placeholder": "标题", - "tooltip": "标题将为后续周期添加编号。例如:设计 - 1/2/3", - "validation": { - "required": "周期标题为必填项", - "max_length": "标题不得超过255个字符" - } - }, - "cycle_duration": { - "label": "周期持续时间", - "unit": "周", - "validation": { - "required": "周期持续时间为必填项", - "min": "周期持续时间必须至少为1周", - "max": "周期持续时间不得超过30周", - "positive": "周期持续时间必须为正数" - } - }, - "cooldown_period": { - "label": "冷却期", - "unit": "天", - "tooltip": "下一个周期开始前的周期间隔暂停期。", - "validation": { - "required": "冷却期为必填项", - "negative": "冷却期不能为负数" - } - }, - "start_date": { - "label": "周期开始日", - "validation": { - "required": "开始日期为必填项", - "past": "开始日期不能是过去的日期" - } + "workflows": { + "toggle": { + "title": "启用工作流", + "description": "设置工作流以控制工作项的流转", + "no_states_tooltip": "该工作流中尚未添加任何状态。", + "no_work_item_types_tooltip": "该工作流中尚未添加任何工作项类型。", + "no_states_or_work_item_types_tooltip": "该工作流中尚未添加任何状态或工作项类型。", + "toast": { + "loading": { + "enabling": "正在启用工作流", + "disabling": "正在停用工作流" }, - "number_of_cycles": { - "label": "未来周期数", - "validation": { - "required": "周期数为必填项", - "min": "至少需要1个周期", - "max": "无法安排超过3个周期" - } + "success": { + "title": "成功!", + "message": "工作流已成功启用。" }, - "auto_rollover": { - "label": "工作项自动结转", - "tooltip": "在周期完成的当天,将所有未完成的工作项移至下一个周期。" + "error": { + "title": "错误!", + "message": "启用工作流失败。请重试。" + } + } + }, + "heading": "工作流", + "description": "自动化工作项流转,并设置规则来控制任务如何在项目流程中推进。", + "add_button": "添加新工作流", + "search": "搜索工作流", + "detail": { + "define": "定义工作流", + "add_states": "添加状态", + "unmapped_states": { + "title": "检测到未映射的状态", + "description": "所选类型的一些工作项当前处于该工作流中不存在的状态。", + "note": "如果启用该工作流,这些工作项将自动移动到该工作流的初始状态。", + "label": "缺失的状态", + "tooltip": "一些工作项处于未映射到该工作流的状态。打开工作流进行查看。" + } + }, + "select_states": { + "empty_state": { + "title": "所有状态均已在使用中", + "description": "为该项目定义的所有状态都已存在于当前工作流中。" + } + }, + "default_footer": { + "fallback_message": "该工作流适用于未分配给任何工作流的任何工作项类型。" + }, + "create": { + "heading": "创建新工作流", + "name": { + "placeholder": "添加唯一名称", + "validation": { + "max_length": "名称必须少于 255 个字符", + "required": "名称为必填项", + "invalid": "名称只能包含字母、数字、空格、连字符和撇号" } }, - "toast": { - "toggle": { - "loading_enable": "正在启用自动安排周期", - "loading_disable": "正在禁用自动安排周期", - "success": { - "title": "成功!", - "message": "自动安排周期已成功切换。" - }, - "error": { - "title": "错误!", - "message": "切换自动安排周期失败。" - } - }, - "save": { - "loading": "正在保存自动安排周期配置", - "success": { - "title": "成功!", - "message_create": "自动安排周期配置已成功保存。", - "message_update": "自动安排周期配置已成功更新。" - }, - "error": { - "title": "错误!", - "message_create": "保存自动安排周期配置失败。", - "message_update": "更新自动安排周期配置失败。" - } + "description": { + "placeholder": "添加简短描述", + "validation": { + "invalid": "描述只能包含字母、数字、空格、连字符和撇号" } + }, + "work_item_type": { + "label": "工作项类型" + }, + "success": { + "title": "成功!", + "message": "工作流创建成功。" + }, + "error": { + "title": "错误!", + "message": "创建工作流失败。请重试。" + } + }, + "update": { + "success": { + "title": "成功!", + "message": "工作流更新成功。" + }, + "error": { + "title": "错误!", + "message": "更新工作流失败。请重试。" + } + }, + "delete": { + "loading": "正在删除工作流", + "success": { + "title": "成功!", + "message": "工作流删除成功。" + }, + "error": { + "title": "错误!", + "message": "删除工作流失败。请重试。" + } + }, + "add_states": { + "success": { + "title": "成功!", + "message": "状态添加成功。" + }, + "error": { + "title": "错误!", + "message": "添加状态失败。请重试。" } } }, + "work_item_types": { + "heading": "工作项类型", + "description": "创建和自定义具有独特属性的不同类型工作项" + }, "features": { "cycles": { "title": "周期", @@ -360,6 +423,103 @@ "description": "里程碑提供了一个层,用于将工作项对齐到共享的完成日期。", "toggle_title": "启用里程碑", "toggle_description": "按里程碑截止日期组织工作项。" + }, + "toasts": { + "loading": "正在更新项目功能...", + "success": "项目功能更新成功。", + "error": "更新项目功能时出现错误。请重试。" + } + }, + "project_updates": { + "heading": "项目更新", + "description": "为此项目提供综合跟踪和进度监控" + }, + "templates": { + "heading": "模板", + "description": "使用模板可节省 80% 创建项目、工作项和页面的时间。" + }, + "cycles": { + "auto_schedule": { + "heading": "自动安排周期", + "description": "无需手动设置即可保持周期运行。", + "tooltip": "根据您选择的计划自动创建新周期。", + "edit_button": "编辑", + "form": { + "cycle_title": { + "label": "周期标题", + "placeholder": "标题", + "tooltip": "标题将为后续周期添加编号。例如:设计 - 1/2/3", + "validation": { + "required": "周期标题为必填项", + "max_length": "标题不得超过255个字符" + } + }, + "cycle_duration": { + "label": "周期持续时间", + "unit": "周", + "validation": { + "required": "周期持续时间为必填项", + "min": "周期持续时间必须至少为1周", + "max": "周期持续时间不得超过30周", + "positive": "周期持续时间必须为正数" + } + }, + "cooldown_period": { + "label": "冷却期", + "unit": "天", + "tooltip": "下一个周期开始前的周期间隔暂停期。", + "validation": { + "required": "冷却期为必填项", + "negative": "冷却期不能为负数" + } + }, + "start_date": { + "label": "周期开始日", + "validation": { + "required": "开始日期为必填项", + "past": "开始日期不能是过去的日期" + } + }, + "number_of_cycles": { + "label": "未来周期数", + "validation": { + "required": "周期数为必填项", + "min": "至少需要1个周期", + "max": "无法安排超过3个周期" + } + }, + "auto_rollover": { + "label": "工作项自动结转", + "tooltip": "在周期完成的当天,将所有未完成的工作项移至下一个周期。" + } + }, + "toast": { + "toggle": { + "loading_enable": "正在启用自动安排周期", + "loading_disable": "正在禁用自动安排周期", + "success": { + "title": "成功!", + "message": "自动安排周期已成功切换。" + }, + "error": { + "title": "错误!", + "message": "切换自动安排周期失败。" + } + }, + "save": { + "loading": "正在保存自动安排周期配置", + "success": { + "title": "成功!", + "message_create": "自动安排周期配置已成功保存。", + "message_update": "自动安排周期配置已成功更新。" + }, + "error": { + "title": "错误!", + "message_create": "保存自动安排周期配置失败。", + "message_update": "更新自动安排周期配置失败。" + } + } + } } } } diff --git a/packages/i18n/src/locales/zh-CN/project.json b/packages/i18n/src/locales/zh-CN/project.json index aab002f23dd..53c1b28ea33 100644 --- a/packages/i18n/src/locales/zh-CN/project.json +++ b/packages/i18n/src/locales/zh-CN/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "为您的项目保存筛选视图。根据需要创建任意数量", + "description": "视图是您经常使用或想要轻松访问的一组已保存的筛选条件。项目中的所有同事都可以看到每个人的视图,并选择最适合他们需求的视图。", + "primary_button": { + "text": "创建您的第一个视图", + "comic": { + "title": "视图基于工作项属性运作。", + "description": "您可以在此处创建一个视图,根据需要使用任意数量的属性作为筛选条件。" + } + }, + "filter": { + "title": "没有匹配的视图", + "description": "没有符合搜索条件的视图。\n创建一个新视图。" + } + }, + "no_archived_issues": { + "title": "尚无已归档的工作项", + "description": "通过手动或自动化方式,您可以归档已完成或已取消的工作项。归档后可以在这里找到它们。", + "primary_button": { + "text": "设置自动化" + } + }, + "issues_empty_filter": { + "title": "未找到符合筛选条件的工作项", + "secondary_button": { + "text": "清除所有筛选条件" + } + }, + "public": { + "title": "尚无公共页面", + "description": "在这里查看与项目中所有人共享的页面。", + "primary_button": { + "text": "创建您的第一个页面" + } + }, + "archived": { + "title": "尚无已归档的页面", + "description": "归档不在您关注范围内的页面。需要时可以在这里访问它们。" + }, + "shared": { + "title": "尚无共享页面", + "description": "其他人与您共享的页面将显示在此处。" + } + }, + "delete_view": { + "title": "您确定要删除此视图吗?", + "content": "如果您确认,您为此视图选择的所有排序、筛选和显示选项 + 布局将被永久删除,无法恢复。" + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "为您的项目保存筛选视图。根据需要创建任意数量", - "description": "视图是您经常使用或想要轻松访问的一组已保存的筛选条件。项目中的所有同事都可以看到每个人的视图,并选择最适合他们需求的视图。", - "primary_button": { - "text": "创建您的第一个视图", - "comic": { - "title": "视图基于工作项属性运作。", - "description": "您可以在此处创建一个视图,根据需要使用任意数量的属性作为筛选条件。" - } - } - }, - "filter": { - "title": "没有匹配的视图", - "description": "没有符合搜索条件的视图。\n创建一个新视图。" - } - }, - "delete_view": { - "title": "您确定要删除此视图吗?", - "content": "如果您确认,您为此视图选择的所有排序、筛选和显示选项 + 布局将被永久删除,无法恢复。" - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "手动" } }, + "project_members": { + "full_name": "全名", + "display_name": "显示名称", + "email": "邮箱", + "joining_date": "加入日期", + "role": "角色" + }, "project": { "members_import": { "title": "从CSV导入成员", diff --git a/packages/i18n/src/locales/zh-CN/settings.json b/packages/i18n/src/locales/zh-CN/settings.json index 05ce233703c..4351bb58af2 100644 --- a/packages/i18n/src/locales/zh-CN/settings.json +++ b/packages/i18n/src/locales/zh-CN/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "偏好设置", + "description": "按照您的工作方式自定义您的应用体验" + }, "notifications": { + "heading": "邮件通知", + "description": "及时了解您订阅的工作项。启用此功能以接收通知。", "select_default_view": "选择默认视图", "compact": "紧凑", "full": "全屏" + }, + "security": { + "heading": "安全" + }, + "api_tokens": { + "title": "个人访问令牌", + "description": "生成安全的 API 令牌,将您的数据与外部系统和应用程序集成。" + }, + "activity": { + "heading": "活动", + "description": "跟踪您在所有项目和工作项中的最近操作和更改。" + }, + "connections": { + "title": "连接", + "heading": "连接", + "description": "管理您的工作区连接设置。" } }, "profile": { @@ -78,8 +100,9 @@ "profile": "个人资料", "security": "安全", "activity": "活动", - "appearance": "外观", + "preferences": "偏好设置", "notifications": "通知", + "api-tokens": "个人访问令牌", "connections": "连接" }, "tabs": { diff --git a/packages/i18n/src/locales/zh-CN/template.json b/packages/i18n/src/locales/zh-CN/template.json index d66c62483af..05112ecb252 100644 --- a/packages/i18n/src/locales/zh-CN/template.json +++ b/packages/i18n/src/locales/zh-CN/template.json @@ -3,6 +3,9 @@ "settings": { "title": "模板", "description": "使用模板可以节省80%创建项目、工作项和页面的时间。", + "new_project_template": "新建项目模板", + "new_work_item_template": "新建工作项模板", + "new_page_template": "新建页面模板", "options": { "project": { "label": "项目模板" @@ -157,6 +160,14 @@ "required": "至少需要一个关键词" } }, + "website": { + "label": "网站 URL", + "placeholder": "https://plane.so", + "validation": { + "invalid": "无效的 URL", + "maxLength": "URL 应少于800个字符" + } + }, "company_name": { "label": "公司名称", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "无效的邮箱地址", - "required": "支持邮箱是必填项", "maxLength": "支持邮箱应少于255个字符" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " 还没有标签。创建标签以帮助组织和筛选项目中的工作项。" }, + "no_modules": { + "description": "还没有模块。将工作组织成具有专门负责人和受理人的子项目。" + }, "no_work_items": { "description": "还没有工作项。添加一个以更好地组织您的工作。" }, diff --git a/packages/i18n/src/locales/zh-CN/tour.json b/packages/i18n/src/locales/zh-CN/tour.json index 2ad15d8e91f..431cbad0a76 100644 --- a/packages/i18n/src/locales/zh-CN/tour.json +++ b/packages/i18n/src/locales/zh-CN/tour.json @@ -110,6 +110,12 @@ "description": "可以推迟工作项以便稍后查看。它将移至您的打开请求列表的底部。" } }, + "mcp_connectors": { + "step_zero": { + "title": "告别标签页切换。连接您的世界。", + "description": "连接 GitHub、Slack,直接在 Plane AI 中跟踪 PR 并总结聊天内容。" + } + }, "navigation": { "modal": { "title": "导航,重新想象", diff --git a/packages/i18n/src/locales/zh-CN/update.json b/packages/i18n/src/locales/zh-CN/update.json index 923d99242fb..c4644507aec 100644 --- a/packages/i18n/src/locales/zh-CN/update.json +++ b/packages/i18n/src/locales/zh-CN/update.json @@ -1,33 +1,16 @@ { "updates": { + "progress": { + "title": "进度", + "since_last_update": "自上次更新以来", + "comments": "{count, plural, other{# 评论}}" + }, "add_update": "添加更新", "add_update_placeholder": "在这里输入您的更新", "empty": { "title": "还没有更新", "description": "您可以在这里查看更新。" }, - "delete": { - "title": "删除更新", - "confirmation": "您确定要删除此更新吗?此操作是不可逆的。", - "success": { - "title": "更新已删除", - "message": "更新已成功删除。" - }, - "error": { - "title": "更新未删除", - "message": "更新未删除。" - } - }, - "update": { - "success": { - "title": "更新已更新", - "message": "更新已成功更新。" - }, - "error": { - "title": "更新未更新", - "message": "更新未更新。" - } - }, "reaction": { "create": { "success": { @@ -38,23 +21,18 @@ "title": "反应未创建", "message": "反应未创建。" } - } - }, - "remove": { - "success": { - "title": "反应已移除", - "message": "反应已成功移除。" }, - "error": { - "title": "反应未移除", - "message": "反应未移除。" + "remove": { + "success": { + "title": "反应已移除", + "message": "反应已成功移除。" + }, + "error": { + "title": "反应未移除", + "message": "反应未移除。" + } } }, - "progress": { - "title": "进度", - "since_last_update": "自上次更新以来", - "comments": "{count, plural, other{# 评论}}" - }, "create": { "success": { "title": "更新已创建", @@ -64,6 +42,28 @@ "title": "更新未创建", "message": "更新未创建。" } + }, + "delete": { + "title": "删除更新", + "confirmation": "您确定要删除此更新吗?此操作是不可逆的。", + "success": { + "title": "更新已删除", + "message": "更新已成功删除。" + }, + "error": { + "title": "更新未删除", + "message": "更新未删除。" + } + }, + "update": { + "success": { + "title": "更新已更新", + "message": "更新已成功更新。" + }, + "error": { + "title": "更新未更新", + "message": "更新未更新。" + } } } } diff --git a/packages/i18n/src/locales/zh-CN/wiki.json b/packages/i18n/src/locales/zh-CN/wiki.json index 347a6df7186..7ee16ca9374 100644 --- a/packages/i18n/src/locales/zh-CN/wiki.json +++ b/packages/i18n/src/locales/zh-CN/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "无法创建页面或将其添加到集合中。请重试。", "collection_link_copied": "集合链接已复制到剪贴板。" } + }, + "wiki": { + "upgrade_flow": { + "title": "升级以解锁 Wiki", + "description": "升级到 Plane Pro 以解锁公共页面、版本历史、共享页面、实时协作,以及用于 Wiki、公司内部文档和知识库的工作区页面。", + "upgrade_button": { + "text": "升级" + }, + "learn_more_button": { + "text": "了解更多" + }, + "download_button": { + "text": "下载数据", + "loading": "下载中" + }, + "tabs": { + "nested_pages": "嵌套页面", + "add_embeds": "添加嵌入", + "publish_pages": "发布页面", + "comments": "评论" + } + }, + "nested_pages_download_banner": { + "title": "嵌套页面需要付费计划。升级以解锁。" + } } } diff --git a/packages/i18n/src/locales/zh-CN/work-item-type.json b/packages/i18n/src/locales/zh-CN/work-item-type.json index 5ae0cf774c7..0cc37999135 100644 --- a/packages/i18n/src/locales/zh-CN/work-item-type.json +++ b/packages/i18n/src/locales/zh-CN/work-item-type.json @@ -3,11 +3,25 @@ "label": "工作项类型", "label_lowercase": "工作项类型", "settings": { - "title": "工作项类型", + "description": "自定义并添加您自己的属性以适应团队需求。", + "cant_delete_default_message": "无法删除此工作项类型,因为它已设置为该项目的默认类型。", + "set_as_default": "设为默认", + "cant_set_default_inactive_message": "请先激活此类型再将其设为默认", + "set_default_confirmation": { + "title": "设为默认工作项类型", + "description": "将 {name} 设为默认后,它将被导入到此工作区的所有项目中。所有新工作项将默认使用此类型。", + "confirm_button": "设为默认" + }, "properties": { - "title": "自定义工作项属性", + "title": "属性", + "description": "创建和自定义属性。", "tooltip": "每种工作项类型都带有一组默认属性,如标题、描述、负责人、状态、优先级、开始日期、截止日期、模块、周期等。您还可以自定义并添加自己的属性以满足团队需求。", "add_button": "添加新属性", + "project": { + "add_button": { + "import_from_workspace": "从工作区导入" + } + }, "dropdown": { "label": "属性类型", "placeholder": "选择类型" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "创建新的自定义属性", + "update": "更新自定义属性" + }, "form": { "display_name": { "placeholder": "标题" @@ -213,9 +231,50 @@ "description": "您为此工作项类型添加的新属性将显示在此处。" } }, + "types": { + "title": "类型", + "description": "使用属性创建和自定义工作项类型。", + "sort_options": { + "project_count": "所属项目数量" + }, + "filter_options": { + "show_active": "显示活动", + "show_inactive": "显示不活动" + }, + "project": { + "add_button": { + "create_new": "新建", + "import_from_workspace": "从工作区导入" + }, + "banner": { + "with_access": "启用工作项类型以从工作区级别导入类型", + "without_access": "工作项类型已禁用。请联系工作区管理员在工作区设置中启用。" + } + } + }, + "linked_properties": { + "title": "自定义属性", + "add_button": "添加属性", + "modal": { + "title": "添加属性", + "empty": { + "title": "没有可用属性", + "description": "所有属性均已关联到此类型。" + } + }, + "unlink_confirmation": { + "title": "取消关联属性", + "description": "取消关联此属性将永久删除使用此类型的所有工作项中该属性的所有值。此操作无法撤销。", + "input_label": "输入", + "input_label_suffix": "以继续:", + "confirm": "取消关联属性", + "loading": "正在取消关联" + } + }, "item_delete_confirmation": { "title": "删除此类型", "description": "删除类型可能会导致现有数据丢失。", + "can_disable_warning": "您想改为禁用该类型吗?", "primary_button": "是的,删除它", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "无法删除默认工作项类型", "cannot_delete_work_item_type_with_associated_work_items": "无法删除有关联工作项的工作项类型" - }, - "can_disable_warning": "您想改为禁用该类型吗?" - }, - "cant_delete_default_message": "无法删除此工作项类型,因为它已设置为该项目的默认类型。", - "set_as_default": "设为默认", - "cant_set_default_inactive_message": "请先激活此类型再将其设为默认", - "set_default_confirmation": { - "title": "设为默认工作项类型", - "description": "将 {name} 设为默认后,它将被导入到此工作区的所有项目中。所有新工作项将默认使用此类型。", - "confirm_button": "设为默认" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "错误!", "message": { + "default": "创建工作项类型失败。请重试!", "conflict": "{name} 类型已存在。请选择其他名称。" } } @@ -269,6 +320,7 @@ "error": { "title": "错误!", "message": { + "default": "更新工作项类型失败。请重试!", "conflict": "{name} 类型已存在。请选择其他名称。" } } @@ -383,10 +435,10 @@ } }, "break_hierarchy_modal": { - "title": "验证错误!", + "title": "保存后将断开现有链接", "content": { "intro": "工作项类型 {workItemTypeName} 包含:", - "parent_items": "{count, plural, other {个父工作项}}", + "parent_items": "{count, plural, other {将清除 # 个父级链接}}。", "child_items": "{count, plural, other {个子工作项}}", "parent_line_suffix_when_also_children": ",以及 ", "footer": "此变更将从 {workItemTypeName} 工作项类型的现有工作项中移除父子关系。" @@ -397,11 +449,11 @@ }, "error_toast": { "title": "错误!", - "message": "无法中断层级结构。请重试。" + "message": "解除链接并保存失败,请重试。" }, "confirm_button": { - "loading": "正在应用", - "default": "应用并解除关联" + "loading": "正在保存", + "default": "仍要保存" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/zh-CN/work-item.json b/packages/i18n/src/locales/zh-CN/work-item.json index 02fe8505edc..0617955699e 100644 --- a/packages/i18n/src/locales/zh-CN/work-item.json +++ b/packages/i18n/src/locales/zh-CN/work-item.json @@ -20,6 +20,7 @@ "due_date": "添加截止日期", "parent": "添加父工作项", "sub_issue": "添加子工作项", + "dependency": "添加依赖", "relation": "添加关系", "link": "添加链接", "existing": "添加现有工作项" @@ -110,6 +111,43 @@ "copy_link": { "success": "评论链接已复制到剪贴板", "error": "复制评论链接时出错。请稍后再试。" + }, + "replies": { + "create": { + "submit_button": "添加回复", + "placeholder": "添加回复" + }, + "toast": { + "fetch": { + "error": { + "message": "获取回复失败" + } + }, + "create": { + "success": { + "message": "回复创建成功" + }, + "error": { + "message": "创建回复失败" + } + }, + "update": { + "success": { + "message": "回复更新成功" + }, + "error": { + "message": "更新回复失败" + } + }, + "delete": { + "success": { + "message": "回复删除成功" + }, + "error": { + "message": "删除回复失败" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "取消全选" }, "open_in_full_screen": "在全屏中打开工作项", + "duplicate": { + "modal": { + "title": "复制到另一个项目", + "description1": "这将创建工作项的副本。", + "description2": "复制时将移除所有属性数据。", + "placeholder": "选择一个项目" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "工作项复制成功" + }, + "error": { + "message": "工作项复制失败" + } + } + }, + "pages": { + "link_pages": "连接页面", + "show_wiki_pages": "显示 Wiki 页面", + "link_pages_to": "连接页面到", + "linked_pages": "连接的页面", + "no_description": "此页面为空。在此输入一些内容,并在此处查看此占位符", + "toasts": { + "link": { + "success": { + "title": "页面已更新", + "message": "页面已成功更新" + }, + "error": { + "title": "页面更新失败", + "message": "页面更新失败" + } + }, + "remove": { + "success": { + "title": "页面已删除", + "message": "页面已成功删除" + }, + "error": { + "title": "页面删除失败", + "message": "页面删除失败" + } + } + } + }, "vote": { "click_to_upvote": "点击赞成", "click_to_downvote": "点击反对", @@ -241,54 +326,6 @@ "title": "无法更新工作项", "message": "某些工作项的状态更改不被允许。请确保状态更改是被允许的。" } - }, - "workflows": { - "toggle": { - "title": "启用工作流", - "description": "设置工作流以控制工作项的流转", - "no_states_tooltip": "该工作流中尚未添加任何状态。", - "toast": { - "loading": { - "enabling": "正在启用工作流", - "disabling": "正在停用工作流" - }, - "success": { - "title": "成功!", - "message": "工作流已成功启用。" - }, - "error": { - "title": "错误!", - "message": "启用工作流失败。请重试。" - } - } - }, - "heading": "工作流", - "description": "自动化工作项流转,并设置规则来控制任务如何在项目流程中推进。", - "add_button": "添加新工作流", - "search": "搜索工作流", - "detail": { - "define": "定义工作流", - "add_states": "添加状态", - "unmapped_states": { - "title": "检测到未映射的状态", - "description": "所选类型的一些工作项当前处于该工作流中不存在的状态。", - "note": "如果启用该工作流,这些工作项将自动移动到该工作流的初始状态。", - "label": "缺失的状态", - "tooltip": "一些工作项处于未映射到该工作流的状态。打开工作流进行查看。" - } - }, - "select_states": { - "empty_state": { - "title": "所有状态均已在使用中", - "description": "为该项目定义的所有状态都已存在于当前工作流中。" - } - }, - "default_footer": { - "fallback_message": "该工作流适用于未分配给任何工作流的任何工作项类型。" - }, - "create": { - "heading": "创建新工作流" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/zh-CN/workspace-settings.json b/packages/i18n/src/locales/zh-CN/workspace-settings.json index 08b8b2dd247..87ea4a39f2a 100644 --- a/packages/i18n/src/locales/zh-CN/workspace-settings.json +++ b/packages/i18n/src/locales/zh-CN/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "账单与计划", + "description": "选择您的计划、管理订阅,并随着需求增长轻松升级。", "title": "账单与计划", "current_plan": "当前计划", "free_plan": "您目前使用的是免费计划", "view_plans": "查看计划" }, "exports": { + "heading": "导出", + "description": "以多种格式导出项目数据,并通过下载链接访问导出历史记录。", "title": "导出", "exporting": "导出中", "previous_exports": "以前的导出", "export_separate_files": "将数据导出为单独的文件", + "exporting_projects": "正在导出项目", + "format": "格式", "filters_info": "应用筛选器以根据您的条件导出特定工作项。", "modal": { "title": "导出到", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooks", + "description": "在项目事件发生时自动向外部服务发送通知。", "title": "Webhooks", "add_webhook": "添加 webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "集成", + "heading": "集成", + "description": "与流行的工具和服务连接,在整个工作流生态系统中同步您的工作。", "page_title": "在可用的应用或您自己的应用中使用您的 Plane 数据。", "page_description": "查看此工作区或您正在使用的所有集成。" }, "imports": { - "title": "导入" + "title": "导入", + "heading": "导入", + "description": "连接并从现有的项目管理工具导入数据,以简化您的工作流集成。" }, "worklogs": { - "title": "工作日志" + "title": "工作日志", + "heading": "工作日志", + "description": "为任何项目中的任何人下载工作日志(即工时表)。" }, "group_syncing": { "title": "组同步", @@ -242,7 +256,10 @@ "description": "配置您的域名并启用单点登录" }, "project_states": { - "title": "项目状态" + "title": "项目状态", + "heading": "查看所有项目的进度概览。", + "description": "项目状态是 Plane 独有的功能,用于按任何项目属性跟踪您所有项目的进度。", + "go_to_settings": "前往设置" }, "projects": { "title": "项目", @@ -252,6 +269,16 @@ "labels": "项目标签" } }, + "templates": { + "title": "模板", + "heading": "模板", + "description": "使用模板可节省 80% 创建项目、工作项和页面的时间。" + }, + "relations": { + "title": "关系", + "heading": "关系", + "description": "创建和管理连接工作区中工作项的关系类型。" + }, "cancel_trial": { "title": "请先取消试用期。", "description": "您目前正在试用我们的付费计划。请先取消试用后再继续。", @@ -263,6 +290,7 @@ "cancel_error_message": "请重试。" }, "applications": { + "internal": "内部", "title": "应用程序", "applicationId_copied": "应用ID已复制到剪贴板", "clientId_copied": "客户端ID已复制到剪贴板", @@ -271,10 +299,61 @@ "your_apps": "您的应用", "connect": "连接", "connected": "已连接", + "disconnect": "断开连接", "install": "安装", "installed": "已安装", "configure": "配置", "app_available": "您已使此应用可用于Plane工作空间", + "app_credentials_regenrated": { + "title": "应用凭证已成功重新生成", + "description": "请在所有使用的地方替换客户端密钥。之前的密钥已不再有效。" + }, + "app_created": { + "title": "应用已成功创建", + "description": "使用凭证将应用安装到 Plane 工作区中" + }, + "installed_apps": "已安装的应用", + "all_apps": "所有应用", + "internal_apps": "内部应用", + "app_name_title": "您将如何命名此应用", + "app_description_title": { + "label": "详细描述", + "placeholder": "为市场编写详细描述。按 '/' 查看命令。" + }, + "authorization_grant_type": { + "title": "连接类型", + "description": "选择您的应用程序应该为工作区安装一次,还是让每个用户连接自己的账户" + }, + "website": { + "title": "网站", + "description": "链接到您的应用程序网站。", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "应用创建者", + "description": "创建该应用的个人或组织。" + }, + "app_maker_error": "应用制作者为必填项", + "setup_url": { + "label": "设置 URL", + "description": "用户在安装应用时将被重定向到此 URL。", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL", + "description": "我们将在此接收来自安装了您应用的工作区的 Webhook 事件和更新。", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhook 密钥", + "description": "用于验证传入 Webhook 请求的密钥。", + "placeholder": "输入随机密钥" + }, + "redirect_uris": { + "label": "重定向 URI(以空格分隔)", + "description": "用户在通过 Plane 认证后将被重定向到此路径。", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "连接Plane工作空间以开始使用", "client_id_and_secret": "客户端ID和密钥", "client_id_and_secret_description": "复制并保存此密钥。关闭后您将无法再次查看此密钥。", @@ -286,23 +365,13 @@ "slug_already_exists": "别名已存在", "failed_to_create_application": "创建应用程序失败", "upload_logo": "上传标志", - "app_name_title": "您将如何命名此应用", "app_name_error": "应用名称为必填项", "app_short_description_title": "为此应用提供简短描述", "app_short_description_error": "应用简短描述为必填项", - "app_description_title": { - "label": "详细描述", - "placeholder": "为市场编写详细描述。按 '/' 查看命令。" - }, - "authorization_grant_type": { - "title": "连接类型", - "description": "选择您的应用程序应该为工作区安装一次,还是让每个用户连接自己的账户" - }, "app_description_error": "应用描述为必填项", "app_slug_title": "应用别名", "app_slug_error": "应用别名为必填项", - "app_maker_title": "应用制作者", - "app_maker_error": "应用制作者为必填项", + "invalid_website_error": "无效的网站", "webhook_url_title": "Webhook URL", "webhook_url_error": "Webhook URL为必填项", "invalid_webhook_url_error": "无效的Webhook URL", @@ -364,7 +433,6 @@ "video_url_title": "视频URL", "video_url_error": "视频URL是必填项", "invalid_video_url_error": "无效的视频URL", - "setup_url_title": "设置URL", "setup_url_error": "设置URL是必填项", "invalid_setup_url_error": "无效的设置URL", "configuration_url_title": "配置URL", @@ -380,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "无效的文件或超过大小限制 ({size} MB)", "uploading": "上传中...", "upload_and_save": "上传并保存", - "app_credentials_regenrated": { - "title": "应用凭证已成功重新生成", - "description": "请在所有使用的地方替换客户端密钥。之前的密钥已不再有效。" - }, - "app_created": { - "title": "应用已成功创建", - "description": "使用凭证将应用安装到 Plane 工作区中" - }, - "installed_apps": "已安装的应用", - "all_apps": "所有应用", - "internal_apps": "内部应用", - "website": { - "title": "网站", - "description": "链接到您的应用程序网站。", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "应用创建者", - "description": "创建该应用的个人或组织。" - }, - "setup_url": { - "label": "设置 URL", - "description": "用户在安装应用时将被重定向到此 URL。", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL", - "description": "我们将在此接收来自安装了您应用的工作区的 Webhook 事件和更新。", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "重定向 URI(以空格分隔)", - "description": "用户在通过 Plane 认证后将被重定向到此路径。", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "安装请求", "app_consent_no_access_description": "此应用只能在工作区管理员安装后才能安装。请联系您的工作区管理员以继续。", + "app_consent_unapproved_title": "此应用尚未经过 Plane 审核或批准。", + "app_consent_unapproved_description": "在将此应用连接到您的工作区之前,请确保您信任此应用。", + "go_to_app": "前往应用", "enable_app_mentions": "启用应用提及", "enable_app_mentions_tooltip": "启用此功能后,用户可以提及或分配工作项到此应用。", "scopes": "范围", @@ -435,13 +472,18 @@ "profile": "访问用户资料信息", "agents": "访问代理以及所有代理相关实体", "assets": "访问资产以及所有资产相关实体" - }, - "internal": "内部" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "使用与您的工作和知识库原生连接的 AI,让您的任务变得更智能、更快速。" + }, + "runners": { + "title": "Plane Runner", + "heading": "脚本", + "new_script": "新建脚本", + "description": "使用自定义脚本和自动化规则自动化您的工作流程。" } }, "empty_state": { diff --git a/packages/i18n/src/locales/zh-CN/workspace.json b/packages/i18n/src/locales/zh-CN/workspace.json index 76fd0830cee..a4f06dc7cf1 100644 --- a/packages/i18n/src/locales/zh-CN/workspace.json +++ b/packages/i18n/src/locales/zh-CN/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "范围和需求", "custom": "自定义分析" }, + "total": "{entity}总数", + "started_work_items": "已开始的{entity}", + "backlog_work_items": "待办的{entity}", + "un_started_work_items": "未开始的{entity}", + "completed_work_items": "已完成的{entity}", + "project_insights": "项目洞察", + "summary_of_projects": "项目概览", + "all_projects": "所有项目", + "trend_on_charts": "图表趋势", + "active_projects": "活跃项目", + "customized_insights": "自定义洞察", + "created_vs_resolved": "已创建 vs 已解决", "empty_state": { - "customized_insights": { - "description": "分配给您的工作项将按状态分类显示在此处。", - "title": "暂无数据" + "project_insights": { + "title": "暂无数据", + "description": "分配给您的工作项将按状态分类显示在此处。" }, "created_vs_resolved": { - "description": "随着时间推移创建和解决的工作项将显示在此处。", - "title": "暂无数据" + "title": "暂无数据", + "description": "随着时间推移创建和解决的工作项将显示在此处。" }, - "project_insights": { + "customized_insights": { "title": "暂无数据", "description": "分配给您的工作项将按状态分类显示在此处。" }, @@ -132,29 +144,11 @@ "description": "引入趋势分析将显示在此处。将工作项添加到引入中以开始跟踪趋势。" } }, - "created_vs_resolved": "已创建 vs 已解决", - "customized_insights": "自定义洞察", - "backlog_work_items": "待办的{entity}", - "active_projects": "活跃项目", - "trend_on_charts": "图表趋势", - "all_projects": "所有项目", - "summary_of_projects": "项目概览", - "project_insights": "项目洞察", - "started_work_items": "已开始的{entity}", - "total_work_items": "{entity}总数", - "total_projects": "项目总数", - "total_admins": "管理员总数", - "total_users": "用户总数", - "total_intake": "总收入", - "un_started_work_items": "未开始的{entity}", - "total_guests": "访客总数", - "completed_work_items": "已完成的{entity}", - "total": "{entity}总数", + "upgrade_to_plan": "升级到 {plan} 以解锁 {tab}", + "workitem_resolved_vs_pending": "已解决 vs 待处理的工作项", "projects_by_status": "按状态分类的项目", "active_users": "活跃用户", - "intake_trends": "入学趋势", - "workitem_resolved_vs_pending": "已解决 vs 待处理的工作项", - "upgrade_to_plan": "升级到 {plan} 以解锁 {tab}" + "intake_trends": "入学趋势" }, "workspace_projects": { "label": "{count, plural, one {项目} other {项目}}", @@ -162,6 +156,7 @@ "label": "添加项目" }, "network": { + "label": "网络", "private": { "title": "私有", "description": "仅限邀请访问" @@ -317,6 +312,10 @@ "archived": { "title": "还没有已归档的页面", "description": "归档不在您关注范围内的页面。需要时可以在这里访问它们。" + }, + "shared": { + "title": "尚无共享页面", + "description": "其他人与您共享的页面将显示在此处。" } } }, diff --git a/packages/i18n/src/locales/zh-TW/auth.json b/packages/i18n/src/locales/zh-TW/auth.json index f50994c468b..d7c050487f8 100644 --- a/packages/i18n/src/locales/zh-TW/auth.json +++ b/packages/i18n/src/locales/zh-TW/auth.json @@ -1,163 +1,4 @@ { - "auth": { - "common": { - "email": { - "label": "電子郵件", - "placeholder": "name@company.com", - "errors": { - "required": "必須填寫電子郵件", - "invalid": "電子郵件無效" - } - }, - "password": { - "label": "密碼", - "set_password": "設定密碼", - "placeholder": "輸入密碼", - "confirm_password": { - "label": "確認密碼", - "placeholder": "確認密碼" - }, - "current_password": { - "label": "目前密碼" - }, - "new_password": { - "label": "新密碼", - "placeholder": "輸入新密碼" - }, - "change_password": { - "label": { - "default": "更改密碼", - "submitting": "正在更改密碼" - } - }, - "errors": { - "match": "密碼不匹配", - "empty": "請輸入密碼", - "length": "密碼長度應超過8個字符", - "strength": { - "weak": "密碼強度弱", - "strong": "密碼強度強" - } - }, - "submit": "設定密碼", - "toast": { - "change_password": { - "success": { - "title": "成功!", - "message": "密碼已成功更改。" - }, - "error": { - "title": "錯誤!", - "message": "出現問題。請重試。" - } - } - } - }, - "unique_code": { - "label": "唯一代碼", - "placeholder": "123456", - "paste_code": "貼上傳送到您電子郵件的代碼", - "requesting_new_code": "正在請求新代碼", - "sending_code": "正在發送代碼" - }, - "already_have_an_account": "已有帳戶?", - "login": "登入", - "create_account": "創建帳戶", - "new_to_plane": "初次使用Plane?", - "back_to_sign_in": "返回登入", - "resend_in": "{seconds}秒後重新發送", - "sign_in_with_unique_code": "使用唯一代碼登入", - "forgot_password": "忘記密碼?", - "username": { - "label": "使用者名稱", - "placeholder": "請輸入您的使用者名稱" - } - }, - "sign_up": { - "header": { - "label": "創建帳戶開始與團隊一起管理工作。", - "step": { - "email": { - "header": "註冊", - "sub_header": "" - }, - "password": { - "header": "註冊", - "sub_header": "使用電子郵件-密碼組合註冊。" - }, - "unique_code": { - "header": "註冊", - "sub_header": "使用發送到上述電子郵件的唯一代碼註冊。" - } - } - }, - "errors": { - "password": { - "strength": "請設定強密碼以繼續" - } - } - }, - "sign_in": { - "header": { - "label": "登入開始與團隊一起管理工作。", - "step": { - "email": { - "header": "登入或註冊", - "sub_header": "" - }, - "password": { - "header": "登入或註冊", - "sub_header": "使用您的電子郵件-密碼組合登入。" - }, - "unique_code": { - "header": "登入或註冊", - "sub_header": "使用發送到上述電子郵件地址的唯一代碼登入。" - } - } - } - }, - "forgot_password": { - "title": "重設密碼", - "description": "輸入您的用戶帳戶已驗證的電子郵件地址,我們將向您發送密碼重設連結。", - "email_sent": "我們已將重設連結發送到您的電子郵件地址", - "send_reset_link": "發送重設連結", - "errors": { - "smtp_not_enabled": "我們發現您的管理員尚未啟用SMTP,我們將無法發送密碼重設連結" - }, - "toast": { - "success": { - "title": "郵件已發送", - "message": "請查看您的收件箱以獲取重設密碼的連結。如果幾分鐘內未收到,請檢查垃圾郵件文件夾。" - }, - "error": { - "title": "錯誤!", - "message": "出現問題。請重試。" - } - } - }, - "reset_password": { - "title": "設定新密碼", - "description": "使用強密碼保護您的帳戶" - }, - "set_password": { - "title": "保護您的帳戶", - "description": "設定密碼有助於您安全登入" - }, - "sign_out": { - "toast": { - "error": { - "title": "錯誤!", - "message": "登出失敗。請重試。" - } - } - }, - "ldap": { - "header": { - "label": "使用 {ldapProviderName} 繼續", - "sub_header": "請輸入您的 {ldapProviderName} 憑證" - } - } - }, "sso": { "header": "身分", "description": "設定您的網域以存取安全功能,包括單一登入。", @@ -364,5 +205,164 @@ } } } + }, + "auth": { + "common": { + "email": { + "label": "電子郵件", + "placeholder": "name@company.com", + "errors": { + "required": "必須填寫電子郵件", + "invalid": "電子郵件無效" + } + }, + "password": { + "label": "密碼", + "set_password": "設定密碼", + "placeholder": "輸入密碼", + "confirm_password": { + "label": "確認密碼", + "placeholder": "確認密碼" + }, + "current_password": { + "label": "目前密碼" + }, + "new_password": { + "label": "新密碼", + "placeholder": "輸入新密碼" + }, + "change_password": { + "label": { + "default": "更改密碼", + "submitting": "正在更改密碼" + } + }, + "errors": { + "match": "密碼不匹配", + "empty": "請輸入密碼", + "length": "密碼長度應超過8個字符", + "strength": { + "weak": "密碼強度弱", + "strong": "密碼強度強" + } + }, + "submit": "設定密碼", + "toast": { + "change_password": { + "success": { + "title": "成功!", + "message": "密碼已成功更改。" + }, + "error": { + "title": "錯誤!", + "message": "出現問題。請重試。" + } + } + } + }, + "unique_code": { + "label": "唯一代碼", + "placeholder": "123456", + "paste_code": "貼上傳送到您電子郵件的代碼", + "requesting_new_code": "正在請求新代碼", + "sending_code": "正在發送代碼" + }, + "already_have_an_account": "已有帳戶?", + "login": "登入", + "create_account": "創建帳戶", + "new_to_plane": "初次使用Plane?", + "back_to_sign_in": "返回登入", + "resend_in": "{seconds}秒後重新發送", + "sign_in_with_unique_code": "使用唯一代碼登入", + "forgot_password": "忘記密碼?", + "username": { + "label": "使用者名稱", + "placeholder": "請輸入您的使用者名稱" + } + }, + "sign_up": { + "header": { + "label": "創建帳戶開始與團隊一起管理工作。", + "step": { + "email": { + "header": "註冊", + "sub_header": "" + }, + "password": { + "header": "註冊", + "sub_header": "使用電子郵件-密碼組合註冊。" + }, + "unique_code": { + "header": "註冊", + "sub_header": "使用發送到上述電子郵件的唯一代碼註冊。" + } + } + }, + "errors": { + "password": { + "strength": "請設定強密碼以繼續" + } + } + }, + "sign_in": { + "header": { + "label": "登入開始與團隊一起管理工作。", + "step": { + "email": { + "header": "登入或註冊", + "sub_header": "" + }, + "password": { + "header": "登入或註冊", + "sub_header": "使用您的電子郵件-密碼組合登入。" + }, + "unique_code": { + "header": "登入或註冊", + "sub_header": "使用發送到上述電子郵件地址的唯一代碼登入。" + } + } + } + }, + "forgot_password": { + "title": "重設密碼", + "description": "輸入您的用戶帳戶已驗證的電子郵件地址,我們將向您發送密碼重設連結。", + "email_sent": "我們已將重設連結發送到您的電子郵件地址", + "send_reset_link": "發送重設連結", + "errors": { + "smtp_not_enabled": "我們發現您的管理員尚未啟用SMTP,我們將無法發送密碼重設連結" + }, + "toast": { + "success": { + "title": "郵件已發送", + "message": "請查看您的收件箱以獲取重設密碼的連結。如果幾分鐘內未收到,請檢查垃圾郵件文件夾。" + }, + "error": { + "title": "錯誤!", + "message": "出現問題。請重試。" + } + } + }, + "reset_password": { + "title": "設定新密碼", + "description": "使用強密碼保護您的帳戶" + }, + "set_password": { + "title": "保護您的帳戶", + "description": "設定密碼有助於您安全登入" + }, + "sign_out": { + "toast": { + "error": { + "title": "錯誤!", + "message": "登出失敗。請重試。" + } + } + }, + "ldap": { + "header": { + "label": "使用 {ldapProviderName} 繼續", + "sub_header": "請輸入您的 {ldapProviderName} 憑證" + } + } } } diff --git a/packages/i18n/src/locales/zh-TW/automation.json b/packages/i18n/src/locales/zh-TW/automation.json index 789ca76a473..27b9a4b90e0 100644 --- a/packages/i18n/src/locales/zh-TW/automation.json +++ b/packages/i18n/src/locales/zh-TW/automation.json @@ -53,6 +53,9 @@ "button": { "previous": "返回", "next": "新增動作" + }, + "warning": { + "disabled_trigger_switching": "建立後即無法變更觸發器類型" } }, "condition": { @@ -68,7 +71,8 @@ "input_placeholder": "選擇一個選項", "handler_name": { "add_comment": "新增評論", - "change_property": "變更屬性" + "change_property": "變更屬性", + "run_script": "執行指令碼" }, "configuration": { "label": "設定", @@ -89,6 +93,9 @@ "comment_block": { "title": "新增評論" }, + "run_script_block": { + "title": "執行指令碼" + }, "change_property_block": { "title": "變更屬性" }, @@ -115,6 +122,8 @@ }, "table": { "title": "自動化標題", + "scope": "範圍", + "projects": "專案", "last_run_on": "最後執行時間", "created_on": "建立時間", "last_updated_on": "最後更新時間", @@ -230,6 +239,35 @@ "description": "自動化是在您的專案中自動執行任務的方式。", "sub_description": "使用自動化可以節省80%的管理時間。" } + }, + "global_automations": { + "project_select": { + "label": "選擇要執行此自動化的專案", + "all_projects": { + "label": "所有專案", + "description": "自動化將針對工作區中的所有專案執行。" + }, + "select_projects": { + "label": "選擇專案", + "description": "自動化將針對工作區中選取的專案執行。", + "placeholder": "選擇專案" + } + }, + "settings": { + "sidebar_label": "自動化", + "title": "自動化", + "description": "透過全域自動化讓工作區中的流程標準化。" + }, + "table": { + "scope": { + "global": "全域", + "project": { + "label": "專案", + "multiple": "多個", + "all": "全部" + } + } + } } } } diff --git a/packages/i18n/src/locales/zh-TW/common.json b/packages/i18n/src/locales/zh-TW/common.json index 4cdf1599a01..834a2d922d8 100644 --- a/packages/i18n/src/locales/zh-TW/common.json +++ b/packages/i18n/src/locales/zh-TW/common.json @@ -17,6 +17,7 @@ "no": "否", "ok": "確定", "name": "名稱", + "unknown_user": "未知使用者", "description": "描述", "search": "搜尋", "add_member": "新增成員", @@ -56,7 +57,8 @@ "no_worklogs": "尚無工時紀錄", "no_history": "尚無歷史紀錄" }, - "appearance": "外觀", + "preferences": "偏好設定", + "language_and_time": "語言與時間", "notifications": "通知", "workspaces": "工作區", "create_workspace": "建立工作區", @@ -69,6 +71,10 @@ "something_went_wrong_please_try_again": "發生錯誤,請再試一次。", "load_more": "載入更多", "select_or_customize_your_interface_color_scheme": "選擇或自訂您的介面配色方案。", + "timezone_setting": "目前的時區設定。", + "language_setting": "選擇使用者介面所使用的語言。", + "settings_moved_to_preferences": "時區與語言設定已移至偏好設定。", + "go_to_preferences": "前往偏好設定", "select_the_cursor_motion_style_that_feels_right_for_you": "選擇適合您的游標移動樣式。", "theme": "主題", "smooth_cursor": "平滑游標", @@ -163,6 +169,7 @@ "project_created_successfully": "專案建立成功", "project_created_successfully_description": "專案建立成功。您現在可以開始新增工作事項。", "project_name_already_taken": "專案名稱已被使用。", + "project_name_cannot_contain_special_characters": "專案名稱不能包含特殊字元。", "project_identifier_already_taken": "專案識別碼已被使用。", "project_cover_image_alt": "專案封面圖片", "name_is_required": "名稱為必填", @@ -207,6 +214,7 @@ "issues": "工作事項", "cycles": "週期", "modules": "模組", + "pages": "頁面", "intake": "進件", "renew": "更新", "preview": "預覽", @@ -298,6 +306,7 @@ "start_date": "開始日期", "end_date": "結束日期", "due_date": "截止日期", + "target_date": "目標日期", "estimate": "評估", "change_parent_issue": "變更父工作事項", "remove_parent_issue": "移除父工作事項", @@ -356,6 +365,8 @@ "new_password_must_be_different_from_old_password": "新密碼必須與舊密碼不同", "edited": "已編輯", "bot": "機器人", + "settings_description": "在一個地方管理您的帳號、工作區和專案偏好設定。在各個分頁間切換以輕鬆設定。", + "back_to_workspace": "返回工作區", "upgrade_request": "請洽工作區管理員升級。", "copied_to_clipboard": "已複製到剪貼簿", "copied_to_clipboard_description": "URL 已成功複製到您的剪貼簿", @@ -422,6 +433,9 @@ "modules": "模組", "labels": "標籤", "label": "標籤", + "admins": "管理員", + "users": "使用者", + "guests": "訪客", "assignees": "指派對象", "assignee": "指派對象", "created_by": "建立者", @@ -451,6 +465,8 @@ "work_item": "工作事項", "work_items": "工作事項", "sub_work_item": "子工作事項", + "views": "檢視", + "pages": "頁面", "add": "新增", "warning": "警告", "updating": "更新中", @@ -496,7 +512,7 @@ "workspace_level": "工作區層級", "order_by": { "label": "排序依據", - "manual": "手動", + "manual": "手動 - 排名", "last_created": "最後建立", "last_updated": "最後更新", "start_date": "開始日期", @@ -532,6 +548,7 @@ "continue": "繼續", "resend": "重新傳送", "relations": "關聯", + "dependencies": "相依性", "errors": { "default": { "title": "錯誤!", @@ -563,11 +580,27 @@ "quarter": "季", "press_for_commands": "按 '/' 以使用指令", "click_to_add_description": "點選以新增描述", + "on_track": "進展順利", + "off_track": "偏離軌道", + "at_risk": "有風險", + "timeline": "時間軸", + "completion": "完成", + "upcoming": "即將發生", + "completed": "已完成", + "in_progress": "進行中", + "planned": "已計劃", + "paused": "暫停", "search": { "label": "搜尋", "placeholder": "輸入以搜尋", "no_matches_found": "找不到符合的項目", - "no_matching_results": "沒有符合的結果" + "no_matching_results": "沒有符合的結果", + "min_chars": "請至少輸入 {count} 個字元以進行搜尋", + "error": "取得搜尋結果時發生錯誤", + "no_results": { + "title": "沒有符合的結果", + "description": "移除搜尋條件以檢視所有結果" + } }, "actions": { "edit": "編輯", @@ -584,7 +617,9 @@ "clear_sorting": "清除排序", "show_weekends": "顯示週末", "enable": "啟用", - "disable": "停用" + "disable": "停用", + "copy_markdown": "複製 Markdown", + "reply": "回覆" }, "name": "名稱", "discard": "捨棄", @@ -597,6 +632,7 @@ "disabled": "已停用", "mandate": "授權", "mandatory": "必要的", + "global": "全域", "yes": "是", "no": "否", "please_wait": "請稍候", @@ -606,6 +642,7 @@ "or": "或", "next": "下一步", "back": "返回", + "retry": "重試", "cancelling": "取消中", "configuring": "設定中", "clear": "清除", @@ -660,31 +697,27 @@ "deactivated_user": "已停用用戶", "apply": "應用", "applying": "應用中", - "users": "使用者", - "admins": "管理員", - "guests": "訪客", - "on_track": "進展順利", - "off_track": "偏離軌道", - "timeline": "時間軸", - "completion": "完成", - "upcoming": "即將發生", - "completed": "已完成", - "in_progress": "進行中", - "planned": "已計劃", - "paused": "暫停", - "at_risk": "有風險", + "overview": "概覽", "no_of": "{entity} 的數量", "resolved": "已解決", + "get_started": "開始使用", "worklogs": "工作日誌", "project_updates": "專案更新", - "overview": "概覽", "workflows": "工作流程", "templates": "模板", + "business": "商業版", "members_and_teamspaces": "成員和團隊空間", + "recurring_work_items": "重複工作事項", + "milestones": "里程碑", "open_in_full_screen": "以全螢幕開啟{page}", "details": "詳情", "project_structure": "專案結構", - "custom_properties": "自訂屬性" + "custom_properties": "自訂屬性", + "your_profile": "Your profile", + "developer": "Developer", + "work_structure": "Work structure", + "execution": "Execution", + "administration": "Administration" }, "chart": { "x_axis": "X 軸", @@ -790,25 +823,28 @@ "plane_didnt_start_up_this_could_be_because_one_or_more_plane_services_failed_to_start": "Plane 未能啟動。這可能是因為一個或多個 Plane 服務啟動失敗。", "choose_view_logs_from_setup_sh_and_docker_logs_to_be_sure": "從 setup.sh 和 Docker 日誌中選擇 View Logs 來確認。" }, + "customize_navigation": "自訂導覽", + "personal": "個人", + "accordion_navigation_control": "手風琴側邊欄導覽", + "horizontal_navigation_bar": "分頁式導覽", + "show_limited_projects_on_sidebar": "在側邊欄顯示限定數量的專案", + "enter_number_of_projects": "輸入專案數量", + "pin": "釘選", + "unpin": "取消釘選", "workspace_dashboards": "儀表板", "pi_chat": "AI 聊天", "in_app": "應用內", "forms": "表單", - "choose_workspace_for_integration": "選擇工作區以連接此應用程式", - "integrations_description": "與 Plane 一起工作的應用程式必須連接到您是管理員的工作區", - "create_a_new_workspace": "建立新的工作區", - "learn_more_about_workspaces": "了解更多關於工作區的資訊", - "no_workspaces_to_connect": "沒有工作區可連接", - "no_workspaces_to_connect_description": "您需要建立工作區才能連接整合和模板", + "milestones": "里程碑", + "milestones_description": "里程碑提供了一個層級,讓工作事項對齊共同的完成日期。", "file_upload": { "upload_text": "點擊此處上傳文件", "drag_drop_text": "拖放", "processing": "處理中", - "invalid": "無效的文件類型", + "invalid_file_type": "無效的文件類型", "missing_fields": "缺少字段", "success": "{fileName} 已上傳!" }, - "project_name_cannot_contain_special_characters": "專案名稱不能包含特殊字元。", "date": "日期", "exporter": { "csv": { diff --git a/packages/i18n/src/locales/zh-TW/editor.json b/packages/i18n/src/locales/zh-TW/editor.json index 8da79866ab6..45d93c25761 100644 --- a/packages/i18n/src/locales/zh-TW/editor.json +++ b/packages/i18n/src/locales/zh-TW/editor.json @@ -41,5 +41,25 @@ "error": { "not_valid_link": "請輸入有效的 URL。" } + }, + "ai_block": { + "content": { + "placeholder": "描述此區塊的內容", + "generated_here": "您的 AI 內容將會在此處生成" + }, + "block_types": { + "placeholder": "選擇區塊類型", + "summarize_page": "摘要頁面", + "custom_prompt": "自訂提示" + }, + "actions": { + "discard": "捨棄", + "generate": "生成", + "generating": "生成中", + "rewriting": "重寫中", + "rewrite": "重寫", + "use_this": "使用此項", + "refine": "精煉" + } } } diff --git a/packages/i18n/src/locales/zh-TW/empty-state.json b/packages/i18n/src/locales/zh-TW/empty-state.json index 189e610c899..ebb0ad85fd0 100644 --- a/packages/i18n/src/locales/zh-TW/empty-state.json +++ b/packages/i18n/src/locales/zh-TW/empty-state.json @@ -249,10 +249,22 @@ "title": "追蹤所有成員的工時表", "description": "在工作項上記錄時間以檢視跨專案任何團隊成員的詳細工時表。" }, + "group_syncing": { + "title": "尚無群組對應" + }, "template_setting": { "title": "暫無範本", "description": "透過為專案、工作項和頁面建立範本來減少設定時間 — 並在幾秒鐘內開始新工作。", "cta_primary": "建立範本" + }, + "workflows": { + "title": "尚無工作流程", + "description": "建立工作流程以管理工作項目的進度。", + "cta_primary": "新增工作流程", + "states": { + "title": "新增狀態", + "description": "選擇工作項目經過的狀態。" + } } } } diff --git a/packages/i18n/src/locales/zh-TW/integration.json b/packages/i18n/src/locales/zh-TW/integration.json index 65e2290e918..fa9fac65242 100644 --- a/packages/i18n/src/locales/zh-TW/integration.json +++ b/packages/i18n/src/locales/zh-TW/integration.json @@ -194,6 +194,10 @@ "server_error_states": "載入狀態時伺服器錯誤" } }, + "bitbucket_dc_integration": { + "name": "Bitbucket Data Center", + "description": "將您的 Bitbucket Data Center 儲存庫與 Plane 連接並同步。" + }, "oauth_bridge_integration": { "name": "OAuth Bridge", "description": "驗證外部 IdP 權杖以進行 API 存取。", @@ -302,6 +306,7 @@ "generic_error": "處理您的請求時發生意外錯誤", "connection_not_found": "找不到請求的連接", "multiple_connections_found": "在只期望一個連接時找到了多個連接", + "cannot_create_multiple_connections": "您已將組織連接到某個工作區。請先中斷現有連接,再連接新的工作區。", "installation_not_found": "找不到請求的安裝", "user_not_found": "找不到請求的用戶", "error_fetching_token": "獲取認證令牌失敗", @@ -315,6 +320,7 @@ "pulling": "拉取中", "timed_out": "超時", "pulled": "已拉取", + "progressing": "進行中", "transforming": "轉換中", "transformed": "已轉換", "pushing": "推送中", diff --git a/packages/i18n/src/locales/zh-TW/module.json b/packages/i18n/src/locales/zh-TW/module.json index 017e3d43b01..0646d9ef3a4 100644 --- a/packages/i18n/src/locales/zh-TW/module.json +++ b/packages/i18n/src/locales/zh-TW/module.json @@ -1,6 +1,7 @@ { "module": { "label": "{count, plural, one {模組} other {模組}}", - "no_module": "無模組" + "no_module": "無模組", + "select": "新增模組" } } diff --git a/packages/i18n/src/locales/zh-TW/navigation.json b/packages/i18n/src/locales/zh-TW/navigation.json index f424c84bdbe..93bd7368117 100644 --- a/packages/i18n/src/locales/zh-TW/navigation.json +++ b/packages/i18n/src/locales/zh-TW/navigation.json @@ -1,10 +1,18 @@ { + "command_k": { + "empty_state": { + "search": { + "title": "找不到結果" + } + } + }, "sidebar": { + "stickies": "便利貼", + "your_work": "你的工作", "projects": "專案", "pages": "頁面", "new_work_item": "新工作項目", "home": "首頁", - "your_work": "你的工作", "inbox": "收件匣", "workspace": "工作區", "views": "視圖", @@ -21,14 +29,6 @@ "epics": "史詩", "upgrade_plan": "升級方案", "plane_pro": "平面專業版", - "business": "商業", - "recurring_work_items": "重複工作項目" - }, - "command_k": { - "empty_state": { - "search": { - "title": "找不到結果" - } - } + "business": "商業" } } diff --git a/packages/i18n/src/locales/zh-TW/page.json b/packages/i18n/src/locales/zh-TW/page.json index 2bca745776d..f0e876a9641 100644 --- a/packages/i18n/src/locales/zh-TW/page.json +++ b/packages/i18n/src/locales/zh-TW/page.json @@ -1,33 +1,4 @@ { - "pages": { - "link_pages": "連接頁面", - "show_wiki_pages": "顯示 Wiki 頁面", - "link_pages_to": "連接頁面到", - "linked_pages": "連接的頁面", - "no_description": "此頁面為空。在此輸入一些內容,並在此處查看此佔位符", - "toasts": { - "link": { - "success": { - "title": "頁面已更新", - "message": "頁面已成功更新" - }, - "error": { - "title": "頁面未更新", - "message": "頁面無法更新" - } - }, - "remove": { - "success": { - "title": "頁面已刪除", - "message": "頁面已成功刪除" - }, - "error": { - "title": "頁面未刪除", - "message": "頁面無法刪除" - } - } - } - }, "page_navigation_pane": { "tabs": { "outline": { @@ -62,6 +33,43 @@ "title": "缺少圖片", "description": "添加圖片以在這裡查看它們。" } + }, + "comments": { + "label": "留言", + "empty_state": { + "title": "沒有留言", + "description": "新增留言以在此處檢視它們。" + } + } + }, + "toasts": { + "errors": { + "wrong_name": "便利貼名稱不能超過 100 個字元。", + "already_exists": "已存在沒有描述的便利貼" + }, + "created": { + "title": "便利貼已建立", + "message": "便利貼已成功建立" + }, + "not_created": { + "title": "便利貼未建立", + "message": "無法建立便利貼" + }, + "updated": { + "title": "便利貼已更新", + "message": "便利貼已成功更新" + }, + "not_updated": { + "title": "便利貼未更新", + "message": "無法更新便利貼" + }, + "removed": { + "title": "便利貼已移除", + "message": "便利貼已成功移除" + }, + "not_removed": { + "title": "便利貼未移除", + "message": "無法移除便利貼" } }, "open_button": "打開導航面板", @@ -70,11 +78,28 @@ }, "page_actions": { "move_page": { + "submit_button": { + "default": "移動", + "loading": "移動中" + }, + "cannot_move_to_teamspace": "私人和共享頁面無法移至團隊空間。", "placeholders": { + "workspace_to_all": "搜尋專案與團隊空間", + "workspace_to_project": "搜尋專案", + "project_to_all": "搜尋專案與團隊空間", + "project_to_project": "搜尋專案", "project_to_all_with_wiki": "搜尋 Wiki 集合、專案和團隊空間", "project_to_project_with_wiki": "搜尋 Wiki 集合和專案" }, "toasts": { + "success": { + "title": "成功!", + "message": "頁面移動成功。" + }, + "error": { + "title": "錯誤!", + "message": "無法移動頁面,請稍後再試。" + }, "collection_error": { "title": "已移至 Wiki", "message": "頁面已移至 Wiki,但無法加入所選集合。它會保留在 General 中。" diff --git a/packages/i18n/src/locales/zh-TW/project-settings.json b/packages/i18n/src/locales/zh-TW/project-settings.json index c5d174746c0..a7c3a476f2e 100644 --- a/packages/i18n/src/locales/zh-TW/project-settings.json +++ b/packages/i18n/src/locales/zh-TW/project-settings.json @@ -21,7 +21,11 @@ "members": { "label": "成員", "project_lead": "專案負責人", + "project_lead_description": "請選擇該專案的專案負責人。", "default_assignee": "預設指派對象", + "default_assignee_description": "請選擇該專案的預設指派人。", + "project_subscribers": "專案訂閱者", + "project_subscribers_description": "請選擇將接收此專案通知的成員。", "guest_super_permissions": { "title": "授予訪客使用者檢視所有工作事項的權限:", "sub_heading": "這將允許訪客檢視所有專案工作事項。" @@ -30,13 +34,11 @@ "title": "邀請成員", "sub_heading": "邀請成員參與您的專案。", "select_co_worker": "選擇同事" - }, - "project_lead_description": "請選擇該專案的專案負責人。", - "default_assignee_description": "請選擇該專案的預設指派人。", - "project_subscribers": "專案訂閱者", - "project_subscribers_description": "請選擇將接收此專案通知的成員。" + } }, "states": { + "heading": "狀態", + "description": "定義並自訂工作流程狀態以追蹤工作事項的進度。", "describe_this_state_for_your_members": "為您的成員描述此狀態。", "empty_state": { "title": "{groupKey} 群組沒有可用的狀態", @@ -44,6 +46,8 @@ } }, "labels": { + "heading": "標籤", + "description": "建立自訂標籤以分類和整理您的工作事項", "label_title": "標籤標題", "label_title_is_required": "標籤標題為必填", "label_max_char": "標籤名稱不應超過 255 個字元", @@ -52,9 +56,11 @@ } }, "estimates": { + "heading": "評估", + "description": "幫助你傳達團隊的複雜性和工作負荷。", "label": "預估", "title": "為我的專案啟用預估", - "description": "幫助你傳達團隊的複雜性和工作負荷。", + "enable_description": "它們能幫助您傳達團隊的複雜度和工作量。", "no_estimate": "無預估", "new": "新估算系統", "create": { @@ -112,6 +118,16 @@ "title": "估算重新排序失敗", "message": "我們無法重新排序估算,請再試一次" } + }, + "switch": { + "success": { + "title": "估算系統已建立", + "message": "已成功建立並啟用" + }, + "error": { + "title": "錯誤", + "message": "發生錯誤" + } } }, "validation": { @@ -162,6 +178,8 @@ }, "automations": { "label": "自動化", + "heading": "自動化", + "description": "設定自動化動作以簡化您的專案管理流程並減少手動任務。", "auto-archive": { "title": "自動封存已關閉的工作項目", "description": "Plane將自動封存已完成或已取消的工作項目。", @@ -194,90 +212,116 @@ "description": "配置 GitHub 和其他整合以同步您的專案工作項目。" } }, - "cycles": { - "auto_schedule": { - "heading": "自動排程週期", - "description": "無需手動設定即可保持週期運作。", - "tooltip": "根據您選擇的排程自動建立新週期。", - "edit_button": "編輯", - "form": { - "cycle_title": { - "label": "週期標題", - "placeholder": "標題", - "tooltip": "標題將為後續週期添加編號。例如:設計 - 1/2/3", - "validation": { - "required": "週期標題為必填項", - "max_length": "標題不得超過255個字元" - } - }, - "cycle_duration": { - "label": "週期持續時間", - "unit": "週", - "validation": { - "required": "週期持續時間為必填項", - "min": "週期持續時間必須至少為1週", - "max": "週期持續時間不得超過30週", - "positive": "週期持續時間必須為正數" - } - }, - "cooldown_period": { - "label": "冷卻期", - "unit": "天", - "tooltip": "下一個週期開始前的週期間隔暫停期。", - "validation": { - "required": "冷卻期為必填項", - "negative": "冷卻期不能為負數" - } - }, - "start_date": { - "label": "週期開始日", - "validation": { - "required": "開始日期為必填項", - "past": "開始日期不能是過去的日期" - } + "workflows": { + "toggle": { + "title": "啟用工作流程", + "description": "設定工作流程以控制工作事項的流轉", + "no_states_tooltip": "此工作流程尚未新增任何狀態。", + "no_work_item_types_tooltip": "此工作流程尚未新增任何工作事項類型。", + "no_states_or_work_item_types_tooltip": "此工作流程尚未新增任何狀態或工作事項類型。", + "toast": { + "loading": { + "enabling": "正在啟用工作流程", + "disabling": "正在停用工作流程" }, - "number_of_cycles": { - "label": "未來週期數", - "validation": { - "required": "週期數為必填項", - "min": "至少需要1個週期", - "max": "無法排程超過3個週期" - } + "success": { + "title": "成功!", + "message": "工作流程已成功啟用。" }, - "auto_rollover": { - "label": "工作項自動結轉", - "tooltip": "在週期完成的當天,將所有未完成的工作項移至下一個週期。" + "error": { + "title": "錯誤!", + "message": "啟用工作流程失敗。請再試一次。" + } + } + }, + "heading": "工作流程", + "description": "自動化工作事項轉換,並設定規則以控制任務在您的專案流程中推進的方式。", + "add_button": "新增工作流程", + "search": "搜尋工作流程", + "detail": { + "define": "定義工作流程", + "add_states": "新增狀態", + "unmapped_states": { + "title": "偵測到未對應的狀態", + "description": "所選類型的某些工作事項目前處於此工作流程中不存在的狀態。", + "note": "如果您啟用此工作流程,這些項目將自動移至此工作流程的初始狀態。", + "label": "缺少的狀態", + "tooltip": "某些工作事項處於未對應至此工作流程的狀態。開啟工作流程以檢視。" + } + }, + "select_states": { + "empty_state": { + "title": "所有狀態皆已使用中", + "description": "此專案定義的所有狀態皆已存在於您目前的工作流程中。" + } + }, + "default_footer": { + "fallback_message": "此工作流程適用於任何未指派給工作流程的工作事項類型。" + }, + "create": { + "heading": "建立新工作流程", + "name": { + "placeholder": "新增一個獨特的名稱", + "validation": { + "max_length": "名稱長度必須少於 255 個字元", + "required": "名稱為必填", + "invalid": "名稱只能包含字母、數字、空格、連字號和撇號" } }, - "toast": { - "toggle": { - "loading_enable": "正在啟用自動排程週期", - "loading_disable": "正在停用自動排程週期", - "success": { - "title": "成功!", - "message": "自動排程週期已成功切換。" - }, - "error": { - "title": "錯誤!", - "message": "切換自動排程週期失敗。" - } - }, - "save": { - "loading": "正在儲存自動排程週期設定", - "success": { - "title": "成功!", - "message_create": "自動排程週期設定已成功儲存。", - "message_update": "自動排程週期設定已成功更新。" - }, - "error": { - "title": "錯誤!", - "message_create": "儲存自動排程週期設定失敗。", - "message_update": "更新自動排程週期設定失敗。" - } + "description": { + "placeholder": "新增簡短描述", + "validation": { + "invalid": "描述只能包含字母、數字、空格、連字號和撇號" } + }, + "work_item_type": { + "label": "工作事項類型" + }, + "success": { + "title": "成功!", + "message": "工作流程建立成功。" + }, + "error": { + "title": "錯誤!", + "message": "建立工作流程失敗。請再試一次。" + } + }, + "update": { + "success": { + "title": "成功!", + "message": "工作流程更新成功。" + }, + "error": { + "title": "錯誤!", + "message": "更新工作流程失敗。請再試一次。" + } + }, + "delete": { + "loading": "正在刪除工作流程", + "success": { + "title": "成功!", + "message": "工作流程刪除成功。" + }, + "error": { + "title": "錯誤!", + "message": "刪除工作流程失敗。請再試一次。" + } + }, + "add_states": { + "success": { + "title": "成功!", + "message": "狀態新增成功。" + }, + "error": { + "title": "錯誤!", + "message": "新增狀態失敗。請再試一次。" } } }, + "work_item_types": { + "heading": "工作事項類型", + "description": "使用獨特屬性建立和自訂不同類型的工作事項" + }, "features": { "cycles": { "title": "週期", @@ -379,6 +423,103 @@ "description": "里程碑提供了一個層,用於將工作項目對齊到共享的完成日期。", "toggle_title": "啟用里程碑", "toggle_description": "按里程碑截止日期組織工作項目。" + }, + "toasts": { + "loading": "正在更新專案功能...", + "success": "專案功能更新成功。", + "error": "更新專案功能時發生錯誤。請再試一次。" + } + }, + "project_updates": { + "heading": "專案更新", + "description": "此專案的整合追蹤和進度監控" + }, + "templates": { + "heading": "模板", + "description": "使用範本可節省 80% 建立專案、工作事項和頁面所花費的時間。" + }, + "cycles": { + "auto_schedule": { + "heading": "自動排程週期", + "description": "無需手動設定即可保持週期運作。", + "tooltip": "根據您選擇的排程自動建立新週期。", + "edit_button": "編輯", + "form": { + "cycle_title": { + "label": "週期標題", + "placeholder": "標題", + "tooltip": "標題將為後續週期添加編號。例如:設計 - 1/2/3", + "validation": { + "required": "週期標題為必填項", + "max_length": "標題不得超過255個字元" + } + }, + "cycle_duration": { + "label": "週期持續時間", + "unit": "週", + "validation": { + "required": "週期持續時間為必填項", + "min": "週期持續時間必須至少為1週", + "max": "週期持續時間不得超過30週", + "positive": "週期持續時間必須為正數" + } + }, + "cooldown_period": { + "label": "冷卻期", + "unit": "天", + "tooltip": "下一個週期開始前的週期間隔暫停期。", + "validation": { + "required": "冷卻期為必填項", + "negative": "冷卻期不能為負數" + } + }, + "start_date": { + "label": "週期開始日", + "validation": { + "required": "開始日期為必填項", + "past": "開始日期不能是過去的日期" + } + }, + "number_of_cycles": { + "label": "未來週期數", + "validation": { + "required": "週期數為必填項", + "min": "至少需要1個週期", + "max": "無法排程超過3個週期" + } + }, + "auto_rollover": { + "label": "工作項自動結轉", + "tooltip": "在週期完成的當天,將所有未完成的工作項移至下一個週期。" + } + }, + "toast": { + "toggle": { + "loading_enable": "正在啟用自動排程週期", + "loading_disable": "正在停用自動排程週期", + "success": { + "title": "成功!", + "message": "自動排程週期已成功切換。" + }, + "error": { + "title": "錯誤!", + "message": "切換自動排程週期失敗。" + } + }, + "save": { + "loading": "正在儲存自動排程週期設定", + "success": { + "title": "成功!", + "message_create": "自動排程週期設定已成功儲存。", + "message_update": "自動排程週期設定已成功更新。" + }, + "error": { + "title": "錯誤!", + "message_create": "儲存自動排程週期設定失敗。", + "message_update": "更新自動排程週期設定失敗。" + } + } + } } } } diff --git a/packages/i18n/src/locales/zh-TW/project.json b/packages/i18n/src/locales/zh-TW/project.json index 81db41fa70e..08e874ac56f 100644 --- a/packages/i18n/src/locales/zh-TW/project.json +++ b/packages/i18n/src/locales/zh-TW/project.json @@ -136,6 +136,57 @@ } } }, + "project_views": { + "empty_state": { + "general": { + "title": "為您的專案儲存篩選的檢視。依需要建立多個檢視", + "description": "檢視是您經常使用或想要輕鬆存取的已儲存篩選器集。專案中的所有同事都可以看到每個人的檢視,並選擇最適合他們需求的檢視。", + "primary_button": { + "text": "建立您的第一個檢視", + "comic": { + "title": "檢視基於工作事項屬性運作。", + "description": "您可以從這裡建立檢視,使用您認為合適的屬性作為篩選器。" + } + }, + "filter": { + "title": "沒有符合的檢視", + "description": "沒有檢視符合搜尋條件。\n改為建立新檢視。" + } + }, + "no_archived_issues": { + "title": "尚無已封存的工作事項", + "description": "您可以手動或透過自動化封存已完成或已取消的工作事項。封存後會在這裡找到它們。", + "primary_button": { + "text": "設定自動化" + } + }, + "issues_empty_filter": { + "title": "找不到符合所套用篩選器的工作事項", + "secondary_button": { + "text": "清除所有篩選器" + } + }, + "public": { + "title": "尚無公開頁面", + "description": "在此檢視與專案中所有人共享的頁面。", + "primary_button": { + "text": "建立您的第一個頁面" + } + }, + "archived": { + "title": "尚無已封存的頁面", + "description": "封存不在您雷達上的頁面。需要時在此處存取。" + }, + "shared": { + "title": "尚無共享頁面", + "description": "其他人與您共享的頁面會顯示在這裡。" + } + }, + "delete_view": { + "title": "您確定要刪除此視圖嗎?", + "content": "如果您確認,您為此視圖選擇的所有排序、篩選和顯示選項 + 布局將被永久刪除,無法恢復。" + } + }, "project_issues": { "empty_state": { "no_issues": { @@ -217,29 +268,6 @@ } } }, - "project_views": { - "empty_state": { - "general": { - "title": "為您的專案儲存篩選的檢視。依需要建立多個檢視", - "description": "檢視是您經常使用或想要輕鬆存取的已儲存篩選器集。專案中的所有同事都可以看到每個人的檢視,並選擇最適合他們需求的檢視。", - "primary_button": { - "text": "建立您的第一個檢視", - "comic": { - "title": "檢視基於工作事項屬性運作。", - "description": "您可以從這裡建立檢視,使用您認為合適的屬性作為篩選器。" - } - } - }, - "filter": { - "title": "沒有符合的檢視", - "description": "沒有檢視符合搜尋條件。\n改為建立新檢視。" - } - }, - "delete_view": { - "title": "您確定要刪除此視圖嗎?", - "content": "如果您確認,您為此視圖選擇的所有排序、篩選和顯示選項 + 布局將被永久刪除,無法恢復。" - } - }, "project_page": { "empty_state": { "general": { @@ -331,6 +359,13 @@ "manual": "手動" } }, + "project_members": { + "full_name": "全名", + "display_name": "顯示名稱", + "email": "電子郵件", + "joining_date": "加入日期", + "role": "角色" + }, "project": { "members_import": { "title": "從CSV匯入成員", diff --git a/packages/i18n/src/locales/zh-TW/settings.json b/packages/i18n/src/locales/zh-TW/settings.json index e11a9729161..ba424028070 100644 --- a/packages/i18n/src/locales/zh-TW/settings.json +++ b/packages/i18n/src/locales/zh-TW/settings.json @@ -39,10 +39,32 @@ } } }, + "preferences": { + "heading": "偏好設定", + "description": "以您工作的方式自訂您的應用程式體驗" + }, "notifications": { + "heading": "電子郵件通知", + "description": "隨時掌握您訂閱的工作事項。啟用此功能以接收通知。", "select_default_view": "選擇預設檢視", "compact": "緊湊", "full": "全螢幕" + }, + "security": { + "heading": "安全性" + }, + "api_tokens": { + "title": "個人存取權杖", + "description": "產生安全的 API 權杖,以將您的資料與外部系統和應用程式整合。" + }, + "activity": { + "heading": "活動", + "description": "追蹤您在所有專案和工作事項中的近期操作和變更。" + }, + "connections": { + "title": "連接", + "heading": "連接", + "description": "管理您的工作區連接設定。" } }, "profile": { @@ -78,8 +100,9 @@ "profile": "個人資料", "security": "安全性", "activity": "活動", - "appearance": "外觀", + "preferences": "偏好設定", "notifications": "通知", + "api-tokens": "個人存取權杖", "connections": "連接" }, "tabs": { diff --git a/packages/i18n/src/locales/zh-TW/template.json b/packages/i18n/src/locales/zh-TW/template.json index e9957e1994f..8610f8ff25c 100644 --- a/packages/i18n/src/locales/zh-TW/template.json +++ b/packages/i18n/src/locales/zh-TW/template.json @@ -3,6 +3,9 @@ "settings": { "title": "模板", "description": "使用模板可節省80%的專案、工作項目和頁面創建時間。", + "new_project_template": "新專案模板", + "new_work_item_template": "新工作事項模板", + "new_page_template": "新頁面模板", "options": { "project": { "label": "專案模板" @@ -157,6 +160,14 @@ "required": "至少需要一個關鍵詞" } }, + "website": { + "label": "網站 URL", + "placeholder": "https://plane.so", + "validation": { + "invalid": "無效的 URL", + "maxLength": "URL 應少於 800 個字元" + } + }, "company_name": { "label": "公司名稱", "placeholder": "Plane", @@ -170,7 +181,6 @@ "placeholder": "help@plane.so", "validation": { "invalid": "無效的電子郵件地址", - "required": "支持電子郵件為必填項", "maxLength": "支持電子郵件應少於255個字符" } }, @@ -226,6 +236,9 @@ "no_labels": { "description": " 尚無標籤。創建標籤以幫助組織和篩選專案中的工作項目。" }, + "no_modules": { + "description": "尚無模組。將工作組織成具有專門負責人和受讓人的子專案。" + }, "no_work_items": { "description": "尚無工作項目。添加一個以更好地組織您的工作。" }, diff --git a/packages/i18n/src/locales/zh-TW/tour.json b/packages/i18n/src/locales/zh-TW/tour.json index c99b7358b6f..f2599d4883e 100644 --- a/packages/i18n/src/locales/zh-TW/tour.json +++ b/packages/i18n/src/locales/zh-TW/tour.json @@ -110,6 +110,12 @@ "description": "可以推遲工作項以便稍後查看。它將移至您的打開請求列表的底部。" } }, + "mcp_connectors": { + "step_zero": { + "title": "停止切換分頁。連接您的世界。", + "description": "連結 GitHub、Slack 以直接在 Plane AI 中追蹤 PR 並摘要聊天內容。" + } + }, "navigation": { "modal": { "title": "導航,重新想像", diff --git a/packages/i18n/src/locales/zh-TW/update.json b/packages/i18n/src/locales/zh-TW/update.json index 25fa6128abd..04bfa1e2ba9 100644 --- a/packages/i18n/src/locales/zh-TW/update.json +++ b/packages/i18n/src/locales/zh-TW/update.json @@ -1,47 +1,15 @@ { "updates": { - "add_update": "新增更新", - "add_update_placeholder": "在此輸入您的更新", - "empty": { - "title": "尚無更新", - "description": "您可以在此查看更新。" - }, - "delete": { - "title": "刪除更新", - "confirmation": "您確定要刪除此更新嗎?此操作是不可逆的。", - "success": { - "title": "更新已刪除", - "message": "更新已成功刪除。" - }, - "error": { - "title": "更新未刪除", - "message": "更新未刪除。" - } - }, - "update": { - "success": { - "title": "更新已更新", - "message": "更新已成功更新。" - }, - "error": { - "title": "更新未更新", - "message": "更新未更新。" - } - }, "progress": { "title": "進度", "since_last_update": "自最後更新以來", "comments": "{count, plural, one{# 評論} other{# 評論}}" }, - "create": { - "success": { - "title": "更新已創建", - "message": "更新已成功創建。" - }, - "error": { - "title": "更新未創建", - "message": "更新未創建。" - } + "add_update": "新增更新", + "add_update_placeholder": "在此輸入您的更新", + "empty": { + "title": "尚無更新", + "description": "您可以在此查看更新。" }, "reaction": { "create": { @@ -64,6 +32,38 @@ "message": "反應未移除。" } } + }, + "create": { + "success": { + "title": "更新已創建", + "message": "更新已成功創建。" + }, + "error": { + "title": "更新未創建", + "message": "更新未創建。" + } + }, + "delete": { + "title": "刪除更新", + "confirmation": "您確定要刪除此更新嗎?此操作是不可逆的。", + "success": { + "title": "更新已刪除", + "message": "更新已成功刪除。" + }, + "error": { + "title": "更新未刪除", + "message": "更新未刪除。" + } + }, + "update": { + "success": { + "title": "更新已更新", + "message": "更新已成功更新。" + }, + "error": { + "title": "更新未更新", + "message": "更新未更新。" + } } } } diff --git a/packages/i18n/src/locales/zh-TW/wiki.json b/packages/i18n/src/locales/zh-TW/wiki.json index 0e785d00da2..e53c9aeb08a 100644 --- a/packages/i18n/src/locales/zh-TW/wiki.json +++ b/packages/i18n/src/locales/zh-TW/wiki.json @@ -84,5 +84,30 @@ "create_page_in_collection_error": "無法建立頁面或將其加入集合。請再試一次。", "collection_link_copied": "集合連結已複製到剪貼簿。" } + }, + "wiki": { + "upgrade_flow": { + "title": "升級以解鎖 Wiki", + "description": "透過 Plane Pro 解鎖公開頁面、版本歷史、共享頁面、即時協作,以及用於 Wiki、公司文件和知識庫的工作區頁面。", + "upgrade_button": { + "text": "升級" + }, + "learn_more_button": { + "text": "了解更多" + }, + "download_button": { + "text": "下載資料", + "loading": "下載中" + }, + "tabs": { + "nested_pages": "巢狀頁面", + "add_embeds": "新增嵌入內容", + "publish_pages": "發佈頁面", + "comments": "留言" + } + }, + "nested_pages_download_banner": { + "title": "巢狀頁面需要付費方案。升級以解鎖。" + } } } diff --git a/packages/i18n/src/locales/zh-TW/work-item-type.json b/packages/i18n/src/locales/zh-TW/work-item-type.json index 7e312ac1494..c58d61722cb 100644 --- a/packages/i18n/src/locales/zh-TW/work-item-type.json +++ b/packages/i18n/src/locales/zh-TW/work-item-type.json @@ -3,11 +3,25 @@ "label": "工作項目類型", "label_lowercase": "工作項目類型", "settings": { - "title": "工作項目類型", + "description": "自訂並新增您自己的屬性,以符合您團隊的需求。", + "cant_delete_default_message": "無法刪除此工作項目類型,因為它已設置為該專案的預設類型。", + "set_as_default": "設為預設", + "cant_set_default_inactive_message": "請先啟用此類型再將其設為預設", + "set_default_confirmation": { + "title": "設為預設工作項目類型", + "description": "將 {name} 設為預設後,它將被匯入到此工作區的所有專案中。所有新工作項目將預設使用此類型。", + "confirm_button": "設為預設" + }, "properties": { "title": "自定義屬性", + "description": "建立和自訂屬性。", "tooltip": "每種工作項目類型都有一組默認屬性,如標題、描述、負責人、狀態、優先級、開始日期、截止日期、模塊、週期等。您還可以自定義並添加自己的屬性,以適應您團隊的需求。", "add_button": "添加新屬性", + "project": { + "add_button": { + "import_from_workspace": "從工作區匯入" + } + }, "dropdown": { "label": "屬性類型", "placeholder": "選擇類型" @@ -140,6 +154,10 @@ } }, "create_update": { + "title": { + "create": "建立新自訂屬性", + "update": "更新自訂屬性" + }, "form": { "display_name": { "placeholder": "標題" @@ -213,9 +231,50 @@ "description": "您為此工作項目類型添加的新屬性將顯示在此處。" } }, + "types": { + "title": "類型", + "description": "建立和自訂具有屬性的工作事項類型。", + "sort_options": { + "project_count": "參與專案的數量" + }, + "filter_options": { + "show_active": "顯示啟用中", + "show_inactive": "顯示停用中" + }, + "project": { + "add_button": { + "create_new": "建立新的", + "import_from_workspace": "從工作區匯入" + }, + "banner": { + "with_access": "啟用工作事項類型以從工作區層級匯入類型", + "without_access": "工作事項類型已停用。請聯絡工作區管理員在工作區設定中啟用。" + } + } + }, + "linked_properties": { + "title": "自訂屬性", + "add_button": "新增屬性", + "modal": { + "title": "新增屬性", + "empty": { + "title": "沒有可用的屬性", + "description": "所有屬性都已連結到此類型。" + } + }, + "unlink_confirmation": { + "title": "取消連結屬性", + "description": "取消連結此屬性將永久刪除使用此類型的每個工作事項中的所有值。此操作無法還原。", + "input_label": "輸入", + "input_label_suffix": "以繼續:", + "confirm": "取消連結屬性", + "loading": "取消連結中" + } + }, "item_delete_confirmation": { "title": "刪除此類型", "description": "刪除類型可能會導致現有資料遺失。", + "can_disable_warning": "您想改為停用此類型嗎?", "primary_button": "是的,刪除它", "toast": { "success": { @@ -230,16 +289,7 @@ "errors": { "cannot_delete_default_work_item_type": "無法刪除預設工作項目類型", "cannot_delete_work_item_type_with_associated_work_items": "無法刪除具有關聯工作項目的工作項目類型" - }, - "can_disable_warning": "您想改為停用此類型嗎?" - }, - "cant_delete_default_message": "無法刪除此工作項目類型,因為它已設置為該專案的預設類型。", - "set_as_default": "設為預設", - "cant_set_default_inactive_message": "請先啟用此類型再將其設為預設", - "set_default_confirmation": { - "title": "設為預設工作項目類型", - "description": "將 {name} 設為預設後,它將被匯入到此工作區的所有專案中。所有新工作項目將預設使用此類型。", - "confirm_button": "設為預設" + } } }, "create": { @@ -253,6 +303,7 @@ "error": { "title": "錯誤!", "message": { + "default": "建立工作事項類型失敗。請再試一次!", "conflict": "{name} 類型已存在。請選擇其他名稱。" } } @@ -269,6 +320,7 @@ "error": { "title": "錯誤!", "message": { + "default": "更新工作事項類型失敗。請再試一次!", "conflict": "{name} 類型已存在。請選擇其他名稱。" } } @@ -383,10 +435,10 @@ } }, "break_hierarchy_modal": { - "title": "驗證錯誤!", + "title": "儲存後將中斷現有連結", "content": { "intro": "工作項目類型 {workItemTypeName} 包含:", - "parent_items": "{count, plural, other {個父工作項目}}", + "parent_items": "{count, plural, other {將清除 # 個父層連結}}。", "child_items": "{count, plural, other {個子工作項目}}", "parent_line_suffix_when_also_children": ",以及 ", "footer": "此變更將從 {workItemTypeName} 工作項目類型的現有工作項目中移除父子關係。" @@ -397,11 +449,11 @@ }, "error_toast": { "title": "錯誤!", - "message": "無法中斷層級結構。請重試。" + "message": "解除連結並儲存失敗,請再試一次。" }, "confirm_button": { - "loading": "正在套用", - "default": "套用並解除連結" + "loading": "正在儲存", + "default": "仍要儲存" } }, "work_item_modal": { diff --git a/packages/i18n/src/locales/zh-TW/work-item.json b/packages/i18n/src/locales/zh-TW/work-item.json index 956db5ebf91..450b65a1131 100644 --- a/packages/i18n/src/locales/zh-TW/work-item.json +++ b/packages/i18n/src/locales/zh-TW/work-item.json @@ -20,6 +20,7 @@ "due_date": "新增截止日期", "parent": "新增父工作事項", "sub_issue": "新增子工作事項", + "dependency": "新增相依性", "relation": "新增關聯", "link": "新增連結", "existing": "新增現有工作事項" @@ -110,6 +111,43 @@ "copy_link": { "success": "評論連結已複製到剪貼簿", "error": "複製評論連結時出錯。請稍後再試。" + }, + "replies": { + "create": { + "submit_button": "新增回覆", + "placeholder": "新增回覆" + }, + "toast": { + "fetch": { + "error": { + "message": "取得回覆失敗" + } + }, + "create": { + "success": { + "message": "回覆建立成功" + }, + "error": { + "message": "建立回覆失敗" + } + }, + "update": { + "success": { + "message": "回覆更新成功" + }, + "error": { + "message": "更新回覆失敗" + } + }, + "delete": { + "success": { + "message": "回覆刪除成功" + }, + "error": { + "message": "刪除回覆失敗" + } + } + } } }, "empty_state": { @@ -176,6 +214,53 @@ "deselect_all": "取消全選" }, "open_in_full_screen": "以全螢幕開啟工作事項", + "duplicate": { + "modal": { + "title": "複製到另一個專案", + "description1": "此操作將建立此工作事項的副本。", + "description2": "複製時所有屬性資料都將被移除。", + "placeholder": "選擇專案" + } + }, + "toast": { + "duplicate": { + "success": { + "message": "工作事項複製成功" + }, + "error": { + "message": "工作事項複製失敗" + } + } + }, + "pages": { + "link_pages": "連結頁面", + "show_wiki_pages": "顯示 Wiki 頁面", + "link_pages_to": "連結頁面至", + "linked_pages": "已連結的頁面", + "no_description": "這是一個空白頁面。何不在裡面寫點什麼,就像這個佔位符一樣顯示在這裡", + "toasts": { + "link": { + "success": { + "title": "頁面已更新", + "message": "頁面更新成功" + }, + "error": { + "title": "頁面更新失敗", + "message": "頁面更新失敗" + } + }, + "remove": { + "success": { + "title": "頁面已移除", + "message": "頁面移除成功" + }, + "error": { + "title": "頁面移除失敗", + "message": "頁面移除失敗" + } + } + } + }, "vote": { "click_to_upvote": "點擊贊成", "click_to_downvote": "點擊反對", @@ -241,54 +326,6 @@ "title": "無法更新工作項目", "message": "某些工作項目不允許狀態變更。請確保狀態變更是允許的。" } - }, - "workflows": { - "toggle": { - "title": "啟用工作流程", - "description": "設定工作流程以控制工作項目的流轉", - "no_states_tooltip": "此工作流程尚未新增任何狀態。", - "toast": { - "loading": { - "enabling": "正在啟用工作流程", - "disabling": "正在停用工作流程" - }, - "success": { - "title": "成功!", - "message": "工作流程已成功啟用。" - }, - "error": { - "title": "錯誤!", - "message": "啟用工作流程失敗。請再試一次。" - } - } - }, - "heading": "工作流程", - "description": "自動化工作項目轉換,並設定規則以控制任務如何在專案流程中推進。", - "add_button": "新增工作流程", - "search": "搜尋工作流程", - "detail": { - "define": "定義工作流程", - "add_states": "新增狀態", - "unmapped_states": { - "title": "偵測到未對應的狀態", - "description": "所選類型的某些工作項目目前位於此工作流程中不存在的狀態。", - "note": "如果您啟用此工作流程,這些項目將自動移動到此工作流程的初始狀態。", - "label": "缺少的狀態", - "tooltip": "某些工作項目位於未對應到此工作流程的狀態。開啟工作流程以檢視。" - } - }, - "select_states": { - "empty_state": { - "title": "所有狀態都已在使用中", - "description": "此專案定義的所有狀態都已存在於您目前的工作流程中。" - } - }, - "default_footer": { - "fallback_message": "此工作流程適用於任何未指派給任何工作流程的工作項目類型。" - }, - "create": { - "heading": "建立新工作流程" - } } }, "recurring_work_items": { diff --git a/packages/i18n/src/locales/zh-TW/workspace-settings.json b/packages/i18n/src/locales/zh-TW/workspace-settings.json index e0069c63362..2d01f10ef72 100644 --- a/packages/i18n/src/locales/zh-TW/workspace-settings.json +++ b/packages/i18n/src/locales/zh-TW/workspace-settings.json @@ -66,16 +66,22 @@ } }, "billing_and_plans": { + "heading": "計費與方案", + "description": "選擇您的方案、管理訂閱,並在需求增加時輕鬆升級。", "title": "計費和方案", "current_plan": "目前方案", "free_plan": "您目前使用的是免費方案", "view_plans": "檢視方案" }, "exports": { + "heading": "匯出", + "description": "以各種格式匯出您的專案資料,並透過下載連結存取您的匯出歷史記錄。", "title": "匯出", "exporting": "匯出中", "previous_exports": "先前的匯出", "export_separate_files": "將資料匯出為個別檔案", + "exporting_projects": "匯出專案", + "format": "格式", "filters_info": "應用篩選器以根據您的條件匯出特定工作項。", "modal": { "title": "匯出至", @@ -92,6 +98,8 @@ } }, "webhooks": { + "heading": "Webhooks", + "description": "當專案事件發生時,自動向外部服務傳送通知。", "title": "Webhook", "add_webhook": "新增 Webhook", "modal": { @@ -166,14 +174,20 @@ }, "integrations": { "title": "整合", + "heading": "整合", + "description": "與常用工具和服務連結,以便在整個工作流程生態系中同步您的工作。", "page_title": "在可用的應用程式或您自己的應用程式中使用您的 Plane 資料。", "page_description": "查看此工作區或您正在使用的所有整合。" }, "imports": { - "title": "導入" + "title": "導入", + "heading": "匯入", + "description": "從您現有的專案管理工具連接並匯入資料,以簡化您的工作流程整合。" }, "worklogs": { - "title": "工作日誌" + "title": "工作日誌", + "heading": "工作日誌", + "description": "下載任何專案中任何人的工作日誌(即工時表)。" }, "group_syncing": { "title": "群組同步", @@ -242,7 +256,10 @@ "description": "配置您的網域並啟用單一登入" }, "project_states": { - "title": "專案狀態" + "title": "專案狀態", + "heading": "查看所有專案的進度概覽。", + "description": "專案狀態是 Plane 獨有的功能,可依任何專案屬性追蹤所有專案的進度。", + "go_to_settings": "前往設定" }, "projects": { "title": "專案", @@ -252,6 +269,16 @@ "labels": "專案標籤" } }, + "templates": { + "title": "範本", + "heading": "範本", + "description": "使用範本可節省 80% 建立專案、工作事項和頁面所花費的時間。" + }, + "relations": { + "title": "關聯", + "heading": "關聯", + "description": "建立並管理能連接工作區中各工作事項的關聯類型。" + }, "cancel_trial": { "title": "請先取消您的試用期。", "description": "您有一個我們付費方案的有效試用期。請先取消它才能繼續。", @@ -263,6 +290,7 @@ "cancel_error_message": "請再試一次。" }, "applications": { + "internal": "內部", "title": "應用程式", "applicationId_copied": "應用程式ID已複製到剪貼簿", "clientId_copied": "客戶端ID已複製到剪貼簿", @@ -271,10 +299,61 @@ "your_apps": "您的應用", "connect": "連接", "connected": "已連接", + "disconnect": "中斷連線", "install": "安裝", "installed": "已安裝", "configure": "配置", "app_available": "您已使此應用可用於Plane工作空間", + "app_credentials_regenrated": { + "title": "應用程式憑證已成功重新生成", + "description": "請在所有使用的地方替換客戶端密鑰。之前的密鑰已不再有效。" + }, + "app_created": { + "title": "應用程式已成功建立", + "description": "使用憑證將應用程式安裝到 Plane 工作區中" + }, + "installed_apps": "已安裝的應用程式", + "all_apps": "所有應用程式", + "internal_apps": "內部應用程式", + "app_name_title": "您將如何命名此應用", + "app_description_title": { + "label": "詳細描述", + "placeholder": "為市集撰寫詳細描述。按 '/' 查看指令。" + }, + "authorization_grant_type": { + "title": "連接類型", + "description": "選擇您的應用程式應該為工作區安裝一次,還是讓每個使用者連接自己的帳戶" + }, + "website": { + "title": "網站", + "description": "連結到您的應用程式網站。", + "placeholder": "https://example.com" + }, + "app_maker": { + "title": "應用程式建立者", + "description": "建立該應用程式的個人或組織。" + }, + "app_maker_error": "應用製作者為必填項", + "setup_url": { + "label": "設定 URL", + "description": "使用者在安裝應用程式時將被重新導向到此 URL。", + "placeholder": "https://example.com/setup" + }, + "webhook_url": { + "label": "Webhook URL", + "description": "我們將在此接收來自已安裝您應用的工作區的 Webhook 事件和更新。", + "placeholder": "https://example.com/webhook" + }, + "webhook_secret": { + "label": "Webhook 密鑰", + "description": "用於驗證傳入 Webhook 請求的密鑰。", + "placeholder": "輸入隨機密鑰" + }, + "redirect_uris": { + "label": "重定向 URI(以空格分隔)", + "description": "使用者在透過 Plane 認證後將被重新導向到此路徑。", + "placeholder": "https://example.com https://example.com/" + }, "app_available_description": "連接Plane工作空間以開始使用", "client_id_and_secret": "客戶端ID和密鑰", "client_id_and_secret_description": "複製並保存此密鑰。關閉後您將無法再次查看此密鑰。", @@ -286,23 +365,13 @@ "slug_already_exists": "別名已存在", "failed_to_create_application": "建立應用程式失敗", "upload_logo": "上傳標誌", - "app_name_title": "您將如何命名此應用", "app_name_error": "應用名稱為必填項", "app_short_description_title": "為此應用提供簡短描述", "app_short_description_error": "應用簡短描述為必填項", - "app_description_title": { - "label": "詳細描述", - "placeholder": "為市集撰寫詳細描述。按 '/' 查看指令。" - }, - "authorization_grant_type": { - "title": "連接類型", - "description": "選擇您的應用程式應該為工作區安裝一次,還是讓每個使用者連接自己的帳戶" - }, "app_description_error": "應用描述為必填項", "app_slug_title": "應用別名", "app_slug_error": "應用別名為必填項", - "app_maker_title": "應用製作者", - "app_maker_error": "應用製作者為必填項", + "invalid_website_error": "無效的網站", "webhook_url_title": "Webhook URL", "webhook_url_error": "Webhook URL為必填項", "invalid_webhook_url_error": "無效的Webhook URL", @@ -316,6 +385,8 @@ "authorized_javascript_origins_description": "輸入應用將被允許發出請求的來源,用空格分隔,例如 app.com example.com", "create_app": "建立應用", "update_app": "更新應用", + "build_your_own_app": "建立您自己的應用程式", + "edit_app_details": "編輯應用程式詳情", "regenerate_client_secret_description": "重新生成客戶端密鑰。重新生成後,您可以複製密鑰或將其下載到CSV檔案中。", "regenerate_client_secret": "重新生成客戶端密鑰", "regenerate_client_secret_confirm_title": "確定要重新生成客戶端密鑰嗎?", @@ -362,7 +433,6 @@ "video_url_title": "視頻URL", "video_url_error": "視頻URL是必填項", "invalid_video_url_error": "無效的視頻URL", - "setup_url_title": "設置URL", "setup_url_error": "設置URL是必填項", "invalid_setup_url_error": "無效的設置URL", "configuration_url_title": "配置URL", @@ -378,42 +448,11 @@ "invalid_file_or_exceeds_size_limit": "無效的文件或超過大小限制 ({size} MB)", "uploading": "上傳中...", "upload_and_save": "上傳並保存", - "app_credentials_regenrated": { - "title": "應用程式憑證已成功重新生成", - "description": "請在所有使用的地方替換客戶端密鑰。之前的密鑰已不再有效。" - }, - "app_created": { - "title": "應用程式已成功建立", - "description": "使用憑證將應用程式安裝到 Plane 工作區中" - }, - "installed_apps": "已安裝的應用程式", - "all_apps": "所有應用程式", - "internal_apps": "內部應用程式", - "website": { - "title": "網站", - "description": "連結到您的應用程式網站。", - "placeholder": "https://example.com" - }, - "app_maker": { - "title": "應用程式建立者", - "description": "建立該應用程式的個人或組織。" - }, - "setup_url": { - "label": "設定 URL", - "description": "使用者在安裝應用程式時將被重新導向到此 URL。", - "placeholder": "https://example.com/setup" - }, - "webhook_url": { - "label": "Webhook URL", - "description": "我們將在此接收來自已安裝您應用的工作區的 Webhook 事件和更新。", - "placeholder": "https://example.com/webhook" - }, - "redirect_uris": { - "label": "重定向 URI(以空格分隔)", - "description": "使用者在透過 Plane 認證後將被重新導向到此路徑。", - "placeholder": "https://example.com https://example.com/" - }, + "app_consent_no_access_title": "請求安裝", "app_consent_no_access_description": "此應用程式只能在工作區管理員安裝後才能安裝。請聯絡您的工作區管理員以繼續。", + "app_consent_unapproved_title": "此應用程式尚未經 Plane 審核或核准。", + "app_consent_unapproved_description": "將此應用程式連接到您的工作區之前,請確認您信任它。", + "go_to_app": "前往應用程式", "enable_app_mentions": "啟用應用程式提及", "enable_app_mentions_tooltip": "啟用此功能後,使用者可以提及或指派工作項目給此應用程式。", "scopes": "範圍", @@ -433,15 +472,18 @@ "profile": "存取使用者個人資料資訊", "agents": "存取代理以及所有代理相關實體", "assets": "存取資產以及所有資產相關實體" - }, - "build_your_own_app": "建立您自己的應用程式", - "edit_app_details": "編輯應用程式詳情", - "internal": "內部" + } }, "plane-intelligence": { "title": "Plane AI", "heading": "Plane AI", "description": "使用與您的工作和知識庫原生連接的 AI,讓您的任務變得更智能、更快速。" + }, + "runners": { + "title": "Plane Runner", + "heading": "指令碼", + "new_script": "新指令碼", + "description": "使用自訂指令碼和自動化規則,自動化您的工作流程。" } }, "empty_state": { diff --git a/packages/i18n/src/locales/zh-TW/workspace.json b/packages/i18n/src/locales/zh-TW/workspace.json index 39e8c54f02a..3f2194ec768 100644 --- a/packages/i18n/src/locales/zh-TW/workspace.json +++ b/packages/i18n/src/locales/zh-TW/workspace.json @@ -95,16 +95,28 @@ "scope_and_demand": "範圍與需求", "custom": "自訂分析" }, + "total": "{entity}總數", + "started_work_items": "已開始的{entity}", + "backlog_work_items": "待辦的{entity}", + "un_started_work_items": "未開始的{entity}", + "completed_work_items": "已完成的{entity}", + "project_insights": "專案洞察", + "summary_of_projects": "專案摘要", + "all_projects": "所有專案", + "trend_on_charts": "圖表趨勢", + "active_projects": "啟用中的專案", + "customized_insights": "自訂化洞察", + "created_vs_resolved": "已建立 vs 已解決", "empty_state": { - "customized_insights": { - "description": "指派給您的工作項目將依狀態分類顯示在此處。", - "title": "尚無資料" + "project_insights": { + "title": "尚無資料", + "description": "指派給您的工作項目將依狀態分類顯示在此處。" }, "created_vs_resolved": { - "description": "隨著時間推移所建立與解決的工作項目將顯示在此處。", - "title": "尚無資料" + "title": "尚無資料", + "description": "隨著時間推移所建立與解決的工作項目將顯示在此處。" }, - "project_insights": { + "customized_insights": { "title": "尚無資料", "description": "指派給您的工作項目將依狀態分類顯示在此處。" }, @@ -132,29 +144,11 @@ "description": "引入趨勢分析將顯示在此處。將工作項目加入引入以開始追蹤趨勢。" } }, - "created_vs_resolved": "已建立 vs 已解決", - "customized_insights": "自訂化洞察", - "backlog_work_items": "待辦的{entity}", - "active_projects": "啟用中的專案", - "trend_on_charts": "圖表趨勢", - "all_projects": "所有專案", - "summary_of_projects": "專案摘要", - "project_insights": "專案洞察", - "started_work_items": "已開始的{entity}", - "total_work_items": "{entity}總數", - "total_projects": "專案總數", - "total_admins": "管理員總數", - "total_users": "使用者總數", - "total_intake": "總收入", - "un_started_work_items": "未開始的{entity}", - "total_guests": "訪客總數", - "completed_work_items": "已完成的{entity}", - "total": "{entity}總數", + "upgrade_to_plan": "升級至 {plan} 以解鎖 {tab}", + "workitem_resolved_vs_pending": "已解決 vs 待處理的工作項目", "projects_by_status": "按狀態分類的專案", "active_users": "活躍使用者", - "intake_trends": "入學趨勢", - "workitem_resolved_vs_pending": "已解決 vs 待處理的工作項目", - "upgrade_to_plan": "升級至 {plan} 以解鎖 {tab}" + "intake_trends": "入學趨勢" }, "workspace_projects": { "label": "{count, plural, one {專案} other {專案}}", @@ -318,6 +312,10 @@ "archived": { "title": "還沒有歸檔的頁面", "description": "歸檔不在您雷達上的頁面。需要時在這裡訪問它們。" + }, + "shared": { + "title": "尚無共享頁面", + "description": "其他人與您共享的頁面會顯示在這裡。" } } }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cfed0fb7a5c..ab34d8a8b8d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -90,6 +90,9 @@ catalogs: tsdown: specifier: 0.16.0 version: 0.16.0 + tsx: + specifier: 4.20.6 + version: 4.20.6 uuid: specifier: 13.0.0 version: 13.0.0 @@ -251,7 +254,7 @@ importers: version: link:../../packages/typescript-config '@react-router/dev': specifier: 'catalog:' - version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))(yaml@2.8.3) + version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))(yaml@2.8.3) '@types/lodash-es': specifier: 'catalog:' version: 4.17.12 @@ -272,10 +275,10 @@ importers: version: 5.8.3 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) vite-tsconfig-paths: specifier: ^5.1.4 - version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) apps/live: dependencies: @@ -408,7 +411,7 @@ importers: version: 8.18.1 '@vitest/coverage-v8': specifier: ^4.0.8 - version: 4.0.17(vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 4.0.17(vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) pdf-parse: specifier: ^2.4.5 version: 2.4.5 @@ -420,7 +423,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.8 - version: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + version: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) apps/space: dependencies: @@ -535,7 +538,7 @@ importers: version: link:../../packages/typescript-config '@react-router/dev': specifier: 'catalog:' - version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))(yaml@2.8.3) + version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))(yaml@2.8.3) '@tailwindcss/typography': specifier: 0.5.19 version: 0.5.19 @@ -559,10 +562,10 @@ importers: version: 5.8.3 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) vite-tsconfig-paths: specifier: ^5.1.4 - version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) apps/web: dependencies: @@ -737,7 +740,7 @@ importers: version: link:../../packages/typescript-config '@react-router/dev': specifier: 'catalog:' - version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))(yaml@2.8.3) + version: 7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))(yaml@2.8.3) '@tailwindcss/typography': specifier: 0.5.19 version: 0.5.19 @@ -764,10 +767,10 @@ importers: version: 5.8.3 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + version: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) vite-tsconfig-paths: specifier: ^5.1.4 - version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) packages/codemods: devDependencies: @@ -785,7 +788,7 @@ importers: version: 17.3.0 vitest: specifier: ^4.0.8 - version: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + version: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) packages/constants: dependencies: @@ -1069,6 +1072,9 @@ importers: tsdown: specifier: 'catalog:' version: 0.16.0(typescript@5.8.3)(unrun@0.2.34) + tsx: + specifier: 'catalog:' + version: 4.20.6 typescript: specifier: 5.8.3 version: 5.8.3 @@ -1163,13 +1169,13 @@ importers: version: link:../typescript-config '@storybook/addon-designs': specifier: 10.0.2 - version: 10.0.2(@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 10.0.2(@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/addon-docs': specifier: 9.1.10 - version: 9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/react-vite': specifier: 9.1.10 - version: 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.59.0)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.59.0)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@types/react': specifier: 'catalog:' version: 18.3.11 @@ -1178,7 +1184,7 @@ importers: version: 18.3.1 storybook: specifier: 9.1.19 - version: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) tsdown: specifier: 'catalog:' version: 0.16.0(typescript@5.8.3)(unrun@0.2.34) @@ -1377,34 +1383,34 @@ importers: version: link:../typescript-config '@storybook/addon-essentials': specifier: ^8.1.1 - version: 8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/addon-interactions': specifier: ^8.1.1 - version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/addon-links': specifier: ^8.1.1 - version: 8.6.14(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/addon-onboarding': specifier: ^8.1.1 - version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/addon-styling-webpack': specifier: ^1.0.0 - version: 1.0.1(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) + version: 1.0.1(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) '@storybook/addon-webpack5-compiler-swc': specifier: ^1.0.2 version: 1.0.6(@swc/helpers@0.5.17)(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) '@storybook/blocks': specifier: ^8.1.1 - version: 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/react': specifier: ^8.1.1 - version: 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) + version: 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) '@storybook/react-webpack5': specifier: ^8.1.1 - version: 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) + version: 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) '@storybook/test': specifier: ^8.1.1 - version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + version: 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@types/lodash-es': specifier: 'catalog:' version: 4.17.12 @@ -1425,13 +1431,13 @@ importers: version: 10.4.21(postcss@8.5.6) postcss-cli: specifier: ^11.0.0 - version: 11.0.1(jiti@2.6.1)(postcss@8.5.6) + version: 11.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.6) postcss-nested: specifier: ^6.0.1 version: 6.2.0(postcss@8.5.6) storybook: specifier: 9.1.19 - version: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + version: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) tsdown: specifier: 'catalog:' version: 0.16.0(typescript@5.8.3)(unrun@0.2.34) @@ -8296,6 +8302,11 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsx@4.20.6: + resolution: {integrity: sha512-ytQKuwgmrrkDTFP4LjR0ToE2nqgy886GpvRSpU0JAnrdBYppuY5rLkRUYPU1yCryb24SsKBTL/hlDQAEFVwtZg==} + engines: {node: '>=18.0.0'} + hasBin: true + turbo@2.9.4: resolution: {integrity: sha512-wZ/kMcZCuK5oEp7sXSSo/5fzKjP9I2EhoiarZjyCm2Ixk0WxFrC/h0gF3686eHHINoFQOOSWgB/pGfvkR8rkgQ==} hasBin: true @@ -9666,12 +9677,12 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@joshwooding/vite-plugin-react-docgen-typescript@0.6.1(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.6.1(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: glob: 11.1.0 magic-string: 0.30.21 react-docgen-typescript: 2.4.0(typescript@5.8.3) - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) optionalDependencies: typescript: 5.8.3 @@ -10349,7 +10360,7 @@ snapshots: '@react-pdf/primitives': 4.1.1 '@react-pdf/stylesheet': 6.1.2 - '@react-router/dev@7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))(yaml@2.8.3)': + '@react-router/dev@7.13.1(@react-router/serve@7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3))(@types/node@22.12.0)(babel-plugin-macros@3.1.0)(jiti@2.6.1)(lightningcss@1.30.2)(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(terser@5.43.1)(tsx@4.20.6)(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))(yaml@2.8.3)': dependencies: '@babel/core': 7.28.4 '@babel/generator': 7.28.5 @@ -10379,8 +10390,8 @@ snapshots: semver: 7.7.4 tinyglobby: 0.2.15 valibot: 1.2.0(typescript@5.8.3) - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) - vite-node: 3.2.4(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) + vite-node: 3.2.4(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) optionalDependencies: '@react-router/serve': 7.13.1(react-router@7.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.8.3) typescript: 5.8.3 @@ -10614,133 +10625,133 @@ snapshots: '@standard-schema/spec@1.0.0': {} - '@storybook/addon-actions@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-actions@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 dequal: 2.0.3 polished: 4.3.1 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) uuid: 9.0.1 - '@storybook/addon-backgrounds@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-backgrounds@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - '@storybook/addon-controls@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-controls@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 dequal: 2.0.3 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - '@storybook/addon-designs@10.0.2(@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-designs@10.0.2(@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@figspec/react': 1.0.4(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) optionalDependencies: - '@storybook/addon-docs': 9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/addon-docs': 9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/addon-docs@8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-docs@8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@mdx-js/react': 3.1.0(@types/react@18.3.11)(react@18.3.1) - '@storybook/blocks': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/csf-plugin': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/react-dom-shim': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/blocks': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/csf-plugin': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/react-dom-shim': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - '@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-docs@9.1.10(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@mdx-js/react': 3.1.0(@types/react@18.3.11)(react@18.3.1) - '@storybook/csf-plugin': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/csf-plugin': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/icons': 1.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@storybook/react-dom-shim': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/react-dom-shim': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - '@storybook/addon-essentials@8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': - dependencies: - '@storybook/addon-actions': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-backgrounds': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-controls': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-docs': 8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-highlight': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-measure': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-outline': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-toolbars': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/addon-viewport': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + '@storybook/addon-essentials@8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': + dependencies: + '@storybook/addon-actions': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-backgrounds': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-controls': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-docs': 8.6.14(@types/react@18.3.11)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-highlight': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-measure': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-outline': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-toolbars': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/addon-viewport': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - '@storybook/addon-highlight@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-highlight@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/addon-interactions@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-interactions@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/test': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/instrumenter': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/test': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) polished: 4.3.1 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - '@storybook/addon-links@8.6.14(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-links@8.6.14(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 optionalDependencies: react: 18.3.1 - '@storybook/addon-measure@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-measure@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) tiny-invariant: 1.3.3 - '@storybook/addon-onboarding@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-onboarding@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/addon-outline@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-outline@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - '@storybook/addon-styling-webpack@1.0.1(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)))': + '@storybook/addon-styling-webpack@1.0.1(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)))': dependencies: - '@storybook/node-logger': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/node-logger': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) webpack: 5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)) transitivePeerDependencies: - storybook - '@storybook/addon-toolbars@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-toolbars@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/addon-viewport@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/addon-viewport@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: memoizerific: 1.11.3 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@storybook/addon-webpack5-compiler-swc@1.0.6(@swc/helpers@0.5.17)(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)))': dependencies: @@ -10750,25 +10761,25 @@ snapshots: - '@swc/helpers' - webpack - '@storybook/blocks@8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/blocks@8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/icons': 1.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 optionalDependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/builder-vite@9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@storybook/builder-vite@9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: - '@storybook/csf-plugin': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + '@storybook/csf-plugin': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) - '@storybook/builder-webpack5@8.6.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)': + '@storybook/builder-webpack5@8.6.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)': dependencies: - '@storybook/core-webpack': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/core-webpack': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@types/semver': 7.7.1 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 @@ -10782,7 +10793,7 @@ snapshots: path-browserify: 1.0.1 process: 0.11.10 semver: 7.7.4 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) style-loader: 3.3.4(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) terser-webpack-plugin: 5.3.16(@swc/core@1.13.5(@swc/helpers@0.5.17))(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) ts-dedent: 2.2.0 @@ -10802,23 +10813,23 @@ snapshots: - uglify-js - webpack-cli - '@storybook/components@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/components@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/core-webpack@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/core-webpack@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) ts-dedent: 2.2.0 - '@storybook/csf-plugin@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/csf-plugin@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) unplugin: 1.16.1 - '@storybook/csf-plugin@9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/csf-plugin@9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) unplugin: 1.16.1 '@storybook/global@5.0.0': {} @@ -10828,24 +10839,24 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/instrumenter@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/instrumenter@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 '@vitest/utils': 2.1.9 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/manager-api@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/manager-api@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/node-logger@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/node-logger@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/preset-react-webpack@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)': + '@storybook/preset-react-webpack@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)': dependencies: - '@storybook/core-webpack': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/react': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) + '@storybook/core-webpack': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/react': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.8.3)(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17))) '@types/semver': 7.7.1 find-up: 5.0.0 @@ -10855,7 +10866,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) resolve: 1.22.10 semver: 7.7.4 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) tsconfig-paths: 4.2.0 webpack: 5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)) optionalDependencies: @@ -10868,9 +10879,9 @@ snapshots: - uglify-js - webpack-cli - '@storybook/preview-api@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/preview-api@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.8.3)(webpack@5.104.1(@swc/core@1.13.5(@swc/helpers@0.5.17)))': dependencies: @@ -10886,46 +10897,46 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/react-dom-shim@8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/react-dom-shim@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/react-dom-shim@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/react-vite@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.59.0)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@storybook/react-vite@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.59.0)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.1(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.1(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@rollup/pluginutils': 5.2.0(rollup@4.59.0) - '@storybook/builder-vite': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) - '@storybook/react': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) + '@storybook/builder-vite': 9.1.10(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) + '@storybook/react': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) find-up: 7.0.0 magic-string: 0.30.21 react: 18.3.1 react-docgen: 8.0.1 react-dom: 18.3.1(react@18.3.1) resolve: 1.22.10 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) tsconfig-paths: 4.2.0 - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) transitivePeerDependencies: - rollup - supports-color - typescript - '@storybook/react-webpack5@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)': + '@storybook/react-webpack5@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)': dependencies: - '@storybook/builder-webpack5': 8.6.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) - '@storybook/preset-react-webpack': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) - '@storybook/react': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3) + '@storybook/builder-webpack5': 8.6.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) + '@storybook/preset-react-webpack': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(@swc/core@1.13.5(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) + '@storybook/react': 8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) optionalDependencies: typescript: 5.8.3 transitivePeerDependencies: @@ -10937,45 +10948,45 @@ snapshots: - uglify-js - webpack-cli - '@storybook/react@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)': + '@storybook/react@8.6.14(@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)': dependencies: - '@storybook/components': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/components': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/preview-api': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/react-dom-shim': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) - '@storybook/theming': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/manager-api': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/preview-api': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/react-dom-shim': 8.6.14(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) + '@storybook/theming': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) optionalDependencies: - '@storybook/test': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/test': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) typescript: 5.8.3 - '@storybook/react@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))(typescript@5.8.3)': + '@storybook/react@9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))(typescript@5.8.3)': dependencies: '@storybook/global': 5.0.0 - '@storybook/react-dom-shim': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/react-dom-shim': 9.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) optionalDependencies: typescript: 5.8.3 - '@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/test@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))) + '@storybook/instrumenter': 8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))) '@testing-library/dom': 10.4.0 '@testing-library/jest-dom': 6.5.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) '@vitest/expect': 2.0.5 '@vitest/spy': 2.0.5 - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) - '@storybook/theming@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)))': + '@storybook/theming@8.6.14(storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)))': dependencies: - storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + storybook: 9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@swc/core-darwin-arm64@1.13.5': optional: true @@ -11691,7 +11702,7 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitest/coverage-v8@4.0.17(vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@vitest/coverage-v8@4.0.17(vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.17 @@ -11703,7 +11714,7 @@ snapshots: obug: 2.1.1 std-env: 3.10.0 tinyrainbow: 3.0.3 - vitest: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vitest: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) '@vitest/expect@2.0.5': dependencies: @@ -11729,21 +11740,21 @@ snapshots: chai: 6.2.1 tinyrainbow: 3.0.3 - '@vitest/mocker@3.2.4(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@vitest/mocker@3.2.4(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) - '@vitest/mocker@4.0.15(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3))': + '@vitest/mocker@4.0.15(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3))': dependencies: '@vitest/spy': 4.0.15 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) '@vitest/pretty-format@2.0.5': dependencies: @@ -14843,14 +14854,14 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss-cli@11.0.1(jiti@2.6.1)(postcss@8.5.6): + postcss-cli@11.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.6): dependencies: chokidar: 3.6.0 dependency-graph: 1.0.0 fs-extra: 11.3.1 picocolors: 1.1.1 postcss: 8.5.6 - postcss-load-config: 5.1.0(jiti@2.6.1)(postcss@8.5.6) + postcss-load-config: 5.1.0(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.6) postcss-reporter: 7.1.0(postcss@8.5.6) pretty-hrtime: 1.0.3 read-cache: 1.0.0 @@ -14861,13 +14872,14 @@ snapshots: - jiti - tsx - postcss-load-config@5.1.0(jiti@2.6.1)(postcss@8.5.6): + postcss-load-config@5.1.0(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.6): dependencies: lilconfig: 3.1.3 yaml: 2.8.3 optionalDependencies: jiti: 2.6.1 postcss: 8.5.6 + tsx: 4.20.6 postcss-modules-extract-imports@3.1.0(postcss@8.5.6): dependencies: @@ -15850,13 +15862,13 @@ snapshots: std-env@3.10.0: {} - storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)): + storybook@9.1.19(@testing-library/dom@10.4.0)(prettier@3.7.4)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)): dependencies: '@storybook/global': 5.0.0 '@testing-library/jest-dom': 6.9.1 '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + '@vitest/mocker': 3.2.4(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@vitest/spy': 3.2.4 better-opn: 3.0.2 esbuild: 0.25.0 @@ -16126,6 +16138,13 @@ snapshots: tslib@2.8.1: {} + tsx@4.20.6: + dependencies: + esbuild: 0.25.0 + get-tsconfig: 4.13.7 + optionalDependencies: + fsevents: 2.3.3 + turbo@2.9.4: optionalDependencies: '@turbo/darwin-64': 2.9.4 @@ -16401,13 +16420,13 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 - vite-node@3.2.4(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3): + vite-node@3.2.4(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3): dependencies: cac: 6.7.14 debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) transitivePeerDependencies: - '@types/node' - jiti @@ -16422,18 +16441,18 @@ snapshots: - tsx - yaml - vite-tsconfig-paths@5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)): + vite-tsconfig-paths@5.1.4(typescript@5.8.3)(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)): dependencies: debug: 4.4.3 globrex: 0.1.2 tsconfck: 3.1.6(typescript@5.8.3) optionalDependencies: - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) transitivePeerDependencies: - supports-color - typescript - vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3): + vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3): dependencies: esbuild: 0.25.0 fdir: 6.5.0(picomatch@2.3.2) @@ -16447,12 +16466,13 @@ snapshots: jiti: 2.6.1 lightningcss: 1.30.2 terser: 5.43.1 + tsx: 4.20.6 yaml: 2.8.3 - vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3): + vitest@4.0.15(@opentelemetry/api@1.9.0)(@types/node@22.12.0)(jiti@2.6.1)(jsdom@26.1.0)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3): dependencies: '@vitest/expect': 4.0.15 - '@vitest/mocker': 4.0.15(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3)) + '@vitest/mocker': 4.0.15(vite@7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3)) '@vitest/pretty-format': 4.0.15 '@vitest/runner': 4.0.15 '@vitest/snapshot': 4.0.15 @@ -16469,7 +16489,7 @@ snapshots: tinyexec: 1.0.4 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@22.12.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.43.1)(tsx@4.20.6)(yaml@2.8.3) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 7c3e1210bd8..6921deb49e0 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -35,6 +35,7 @@ catalog: react-i18next: 16.6.6 swr: 2.2.4 tsdown: 0.16.0 + tsx: 4.20.6 typescript: 5.8.3 uuid: 13.0.0 vite: 7.3.2