diff --git a/packages/twenty-docs/l/ar/developers/contribute/style-guide.mdx b/packages/twenty-docs/l/ar/developers/contribute/style-guide.mdx index f1fb3cd6e5..ca9d58a9ff 100644 --- a/packages/twenty-docs/l/ar/developers/contribute/style-guide.mdx +++ b/packages/twenty-docs/l/ar/developers/contribute/style-guide.mdx @@ -1,6 +1,6 @@ --- title: دليل الأسلوب -icon: فرشاة الرسم},{ +icon: فرشاة الرسم description: اتفاقيات الشيفرة وأفضل الممارسات للمساهمة في Twenty. --- diff --git a/packages/twenty-docs/l/ar/developers/extend/apps/layout.mdx b/packages/twenty-docs/l/ar/developers/extend/apps/layout.mdx index 1f9a64efae..284324a85b 100644 --- a/packages/twenty-docs/l/ar/developers/extend/apps/layout.mdx +++ b/packages/twenty-docs/l/ar/developers/extend/apps/layout.mdx @@ -1,23 +1,23 @@ --- title: التخطيط -description: Define views, navigation menu items, and page layouts to shape how your app appears in Twenty. +description: عرّف طرق العرض، وعناصر قائمة التنقّل، وتخطيطات الصفحات لتشكيل كيفية ظهور تطبيقك في Twenty. icon: table-columns --- -Layout entities control how your app surfaces inside Twenty's UI — what lives in the sidebar, which saved views ship with the app, and how a record detail page is arranged. +تتحكّم كيانات التخطيط في كيفية ظهور تطبيقك داخل واجهة مستخدم Twenty — ما الذي يوجد في الشريط الجانبي، وأي العروض المحفوظة تأتي مع التطبيق، وكيف يتم ترتيب صفحة تفاصيل السجل. -## Layout concepts +## مفاهيم التخطيط -| Concept | What it controls | كيان | -| ------------------------ | --------------------------------------------------------------------------------- | -------------------------- | -| **View** | A saved list configuration for an object — visible fields, order, filters, groups | `defineView` | -| **Navigation Menu Item** | An entry in the left sidebar that links to a view or an external URL | `defineNavigationMenuItem` | -| **Page Layout** | The tabs and widgets that make up a record's detail page | `definePageLayout` | +| المفهوم | ما الذي يتحكّم فيه | كيان | +| ---------------------- | ------------------------------------------------------------------------------- | -------------------------- | +| **عرض** | تكوين قائمة محفوظة لكائن — الحقول المرئية، والترتيب، وعوامل التصفية، والمجموعات | `defineView` | +| **عنصر قائمة التنقّل** | عنصر في الشريط الجانبي الأيسر يرتبط بعرض أو بعنوان URL خارجي | `defineNavigationMenuItem` | +| **تخطيط الصفحة** | علامات التبويب وعناصر الواجهة التي تشكّل صفحة تفاصيل السجل | `definePageLayout` | -Views, navigation items, and page layouts reference each other by `universalIdentifier`: +تشير العروض، وعناصر التنقّل، وتخطيطات الصفحات إلى بعضها البعض عبر `universalIdentifier`: -* A **navigation menu item** of type `VIEW` points at a `defineView` identifier, so the sidebar link opens that saved view. -* A **page layout** of type `RECORD_PAGE` targets an object and can embed [front components](/l/ar/developers/extend/apps/front-components) inside its tabs as widgets. +* يشير **عنصر قائمة التنقّل** من النوع `VIEW` إلى معرّف `defineView`، بحيث يفتح رابط الشريط الجانبي ذلك العرض المحفوظ. +* يستهدف **تخطيط الصفحة** من النوع `RECORD_PAGE` كائنًا ويمكنه تضمين [مكوّنات الواجهة الأمامية](/l/ar/developers/extend/apps/front-components) داخل علامات التبويب الخاصة به بوصفها عناصر واجهة. diff --git a/packages/twenty-docs/l/cs/developers/contribute/style-guide.mdx b/packages/twenty-docs/l/cs/developers/contribute/style-guide.mdx index c798c5b5e5..6e24275d3f 100644 --- a/packages/twenty-docs/l/cs/developers/contribute/style-guide.mdx +++ b/packages/twenty-docs/l/cs/developers/contribute/style-guide.mdx @@ -1,6 +1,6 @@ --- title: Stylová příručka -icon: paintbrush},{ +icon: paintbrush description: Konvence kódu a osvědčené postupy pro přispívání do Twenty. --- @@ -25,7 +25,7 @@ export function MyComponent() { ### Vlastnosti -Vytvořte typ s názvem `{ComponentName}Props`. Používejte destrukturování. Nepoužívejte `React.FC`. +Vytvořte typ s názvem `{ComponentName}Props`. Používejte destrukturalizaci. Nepoužívejte `React.FC`. ```tsx type MyComponentProps = { @@ -35,7 +35,7 @@ type MyComponentProps = { export const MyComponent = ({ name }: MyComponentProps) =>
Hello {name}
; ``` -### Žádné rozprostření jediné proměnné do props +### Nepoužívejte prop spreading jediné proměnné ```tsx // ❌ Bad @@ -65,7 +65,7 @@ export const myAtomState = createAtomState({ ### Vyhněte se zbytečnému opakovanému vykreslování -* Vytáhněte `useEffect` a načítání dat do sourozeneckých sidecar komponent +* Přesuňte `useEffect` a načítání dat do sesterských sidecar komponent * Upřednostňujte obslužné funkce událostí (`handleClick`, `handleChange`) před `useEffect` * Nepoužívejte `React.memo()` — místo toho opravte kořenovou příčinu * Omezte používání `useCallback` / `useMemo` @@ -97,7 +97,7 @@ export const Page = () => { * **`type` místo `interface`** — flexibilnější, lépe kombinovatelný * **Řetězcové literály místo výčtů** — s výjimkou enumů GraphQL codegenu a interních API knihoven * **Žádné `any`** — vynucený přísný TypeScript -* **Žádné type imports** — používejte běžné importy (vynuceno nástrojem Oxlint `typescript/consistent-type-imports`) +* **Žádné importy typů** — používejte běžné importy (vynuceno nástrojem Oxlint `typescript/consistent-type-imports`) * **Používejte [Zod](https://github.com/colinhacks/zod)** pro runtime validaci netypovaných objektů ## JavaScript @@ -172,5 +172,5 @@ front ``` * Moduly mohou importovat z jiných modulů, ale `ui/` by mělo zůstat bez závislostí -* Používejte podadresáře `internal/` pro kód soukromý pro modul +* Používejte podadresáře `internal/` pro interní kód modulu * Komponenty do 300 řádků, služby do 500 řádků diff --git a/packages/twenty-docs/l/cs/developers/extend/apps/layout.mdx b/packages/twenty-docs/l/cs/developers/extend/apps/layout.mdx index 9a4c20a1c6..6fb8e639a4 100644 --- a/packages/twenty-docs/l/cs/developers/extend/apps/layout.mdx +++ b/packages/twenty-docs/l/cs/developers/extend/apps/layout.mdx @@ -1,23 +1,23 @@ --- title: Rozvržení -description: Define views, navigation menu items, and page layouts to shape how your app appears in Twenty. +description: Definujte pohledy, položky navigační nabídky a rozvržení stránek, abyste utvářeli, jak se vaše aplikace zobrazuje v Twenty. icon: table-columns --- -Layout entities control how your app surfaces inside Twenty's UI — what lives in the sidebar, which saved views ship with the app, and how a record detail page is arranged. +Prvky rozvržení řídí, jak se vaše aplikace zobrazuje v uživatelském rozhraní Twenty — co je v postranním panelu, které uložené pohledy jsou součástí aplikace a jak je uspořádána stránka s podrobnostmi záznamu. -## Layout concepts +## Pojmy rozvržení -| Concept | What it controls | Entita | -| ------------------------ | --------------------------------------------------------------------------------- | -------------------------- | -| **View** | A saved list configuration for an object — visible fields, order, filters, groups | `defineView` | -| **Navigation Menu Item** | An entry in the left sidebar that links to a view or an external URL | `defineNavigationMenuItem` | -| **Page Layout** | The tabs and widgets that make up a record's detail page | `definePageLayout` | +| Pojem | Co řídí | Entita | +| ----------------------------- | ------------------------------------------------------------------------------ | -------------------------- | +| **Pohled** | Uložené nastavení seznamu pro objekt — viditelná pole, pořadí, filtry, skupiny | `defineView` | +| **Položka navigační nabídky** | Položka v levém postranním panelu, která odkazuje na pohled nebo externí URL | `defineNavigationMenuItem` | +| **Rozvržení stránky** | Karty a widgety, které tvoří stránku s podrobnostmi záznamu | `definePageLayout` | -Views, navigation items, and page layouts reference each other by `universalIdentifier`: +Pohledy, položky navigační nabídky a rozvržení stránek se na sebe odkazují pomocí `universalIdentifier`: -* A **navigation menu item** of type `VIEW` points at a `defineView` identifier, so the sidebar link opens that saved view. -* A **page layout** of type `RECORD_PAGE` targets an object and can embed [front components](/l/cs/developers/extend/apps/front-components) inside its tabs as widgets. +* Položka **navigační nabídky** typu `VIEW` odkazuje na identifikátor `defineView`, takže odkaz v postranním panelu otevře daný uložený pohled. +* **Rozvržení stránky** typu `RECORD_PAGE` cílí na objekt a může vkládat [front components](/l/cs/developers/extend/apps/front-components) do svých karet jako widgety. diff --git a/packages/twenty-docs/l/de/developers/extend/oauth.mdx b/packages/twenty-docs/l/de/developers/extend/oauth.mdx index b616259b85..824a21ccec 100644 --- a/packages/twenty-docs/l/de/developers/extend/oauth.mdx +++ b/packages/twenty-docs/l/de/developers/extend/oauth.mdx @@ -48,10 +48,10 @@ Speichern Sie das `client_secret` sicher — es kann später nicht mehr abgerufe ## Geltungsbereiche -| Geltungsbereich | Zugriff | -| --------------- | ----------------------------------------------------------- | -| `api` | Voller Lese-/Schreibzugriff auf die Core- und Metadata-APIs | -| `profile` | Profilinformationen des authentifizierten Benutzers lesen | +| Geltungsbereich | Zugriff | +| --------------- | ------------------------------------------------------------ | +| `api` | Voller Lese-/Schreibzugriff auf die Core- und Metadaten-APIs | +| `profile` | Profilinformationen des authentifizierten Benutzers lesen | Fordern Sie Geltungsbereiche als durch Leerzeichen getrennte Zeichenfolge an: `scope=api profile` diff --git a/packages/twenty-docs/l/de/twenty-ui/display/app-tooltip.mdx b/packages/twenty-docs/l/de/twenty-ui/display/app-tooltip.mdx index 28b24f4c43..71f7a91c77 100644 --- a/packages/twenty-docs/l/de/twenty-ui/display/app-tooltip.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/display/app-tooltip.mdx @@ -1,6 +1,6 @@ --- title: App-Tooltip -icon: nachricht +icon: Nachricht --- diff --git a/packages/twenty-docs/l/de/twenty-ui/display/chip.mdx b/packages/twenty-docs/l/de/twenty-ui/display/chip.mdx index 15282d2f8e..750786efb6 100644 --- a/packages/twenty-docs/l/de/twenty-ui/display/chip.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/display/chip.mdx @@ -38,15 +38,15 @@ export const MyComponent = () => { -| "Eigenschaften" | Typ | Beschreibung | -| --------------- | ------------------------- | ------------------------------------------------------------------------------------------------------ | -| linkToEntity | Zeichenkette | Der Link zur Entität | -| entityId | Zeichenkette | Der eindeutige Identifikator für die Entität | -| name | string | Der Name der Entität | -| pictureUrl | Zeichenkette | s Bild", | -| avatarType | Avatar-Typ | Der Typ des Avatars, den Sie anzeigen möchten. Hat zwei Optionen: `abgerundet` und `quadratisch` | -| Variante | `EntityChipVariante` enum | Variante des Entity-Chips, die Sie anzeigen möchten. Hat zwei Optionen: `regelmäßig` und `transparent` | -| LeftIcon | Icon-Komponente | Eine React-Komponente, die ein Symbol darstellt. Wird auf der linken Seite des Chips angezeigt | +| Props | Typ | Beschreibung | +| ------------ | ------------------------- | ------------------------------------------------------------------------------------------------------ | +| linkToEntity | Zeichenkette | Der Link zur Entität | +| entityId | Zeichenkette | Der eindeutige Identifikator für die Entität | +| name | string | Der Name der Entität | +| pictureUrl | Zeichenkette | s Bild", | +| avatarType | Avatar-Typ | Der Typ des Avatars, den Sie anzeigen möchten. Hat zwei Optionen: `abgerundet` und `quadratisch` | +| Variante | `EntityChipVariante` enum | Variante des Entity-Chips, die Sie anzeigen möchten. Hat zwei Optionen: `regelmäßig` und `transparent` | +| LeftIcon | Icon-Komponente | Eine React-Komponente, die ein Symbol darstellt. Wird auf der linken Seite des Chips angezeigt | @@ -137,15 +137,15 @@ export const MyComponent = () => { -| Eigenschaften | Typ | Beschreibung | -| ------------- | ------------------------- | ------------------------------------------------------------------------------------------------------ | -| linkToEntity | string | Der Link zur Entität | -| entityId | string | Der eindeutige Identifikator für die Entität | -| name | string | Der Name der Entität | -| pictureUrl | Zeichenfolge | s Bild", | -| avatarType | Avatar-Typ | Der Typ des Avatars, den Sie anzeigen möchten. Hat zwei Optionen: `abgerundet` und `quadratisch` | -| Variante | `EntityChipVariante` enum | Variante des Entity-Chips, die Sie anzeigen möchten. Hat zwei Optionen: `regelmäßig` und `transparent` | -| LeftIcon | Icon-Komponente | Eine React-Komponente, die ein Symbol darstellt. Wird auf der linken Seite des Chips angezeigt | +| Props | Typ | Beschreibung | +| ------------ | ------------------------- | ------------------------------------------------------------------------------------------------------ | +| linkToEntity | string | Der Link zur Entität | +| entityId | string | Der eindeutige Identifikator für die Entität | +| name | string | Der Name der Entität | +| pictureUrl | Zeichenfolge | s Bild", | +| avatarType | Avatar-Typ | Der Typ des Avatars, den Sie anzeigen möchten. Hat zwei Optionen: `abgerundet` und `quadratisch` | +| Variante | `EntityChipVariante` enum | Variante des Entity-Chips, die Sie anzeigen möchten. Hat zwei Optionen: `regelmäßig` und `transparent` | +| LeftIcon | Icon-Komponente | Eine React-Komponente, die ein Symbol darstellt. Wird auf der linken Seite des Chips angezeigt | diff --git a/packages/twenty-docs/l/de/twenty-ui/display/tag.mdx b/packages/twenty-docs/l/de/twenty-ui/display/tag.mdx index 766c7fc8a8..3db716e302 100644 --- a/packages/twenty-docs/l/de/twenty-ui/display/tag.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/display/tag.mdx @@ -1,6 +1,6 @@ --- title: '"Tag"' -icon: '"tag"' +icon: tag --- Komponente zur visuellen Kategorisierung oder Kennzeichnung von Inhalten. diff --git a/packages/twenty-docs/l/de/twenty-ui/input/icon-picker.mdx b/packages/twenty-docs/l/de/twenty-ui/input/icon-picker.mdx index e1b9a2f1e3..d8c374cef9 100644 --- a/packages/twenty-docs/l/de/twenty-ui/input/icon-picker.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/input/icon-picker.mdx @@ -40,7 +40,7 @@ export const MyComponent = () => { -| "Eigenschaften" | Typ | Beschreibung | +| Props | Typ | Beschreibung | | --------------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------- | | deaktiviert | boolesch | Deaktiviert die Symbolauswahl, wenn auf `true` gesetzt ist. | | beiÄnderung | function | Die Rückruffunktion wird ausgelöst, wenn der Benutzer ein Symbol auswählt. Es erhält ein Objekt mit `iconKey` und `Icon` Eigenschaften | diff --git a/packages/twenty-docs/l/de/twenty-ui/input/image-input.mdx b/packages/twenty-docs/l/de/twenty-ui/input/image-input.mdx index 586bc0d0c5..29394a0884 100644 --- a/packages/twenty-docs/l/de/twenty-ui/input/image-input.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/input/image-input.mdx @@ -23,15 +23,15 @@ export const MyComponent = () => { -| "Eigenschaften" | Typ | Beschreibung | -| --------------- | ------------ | ------------------------------------------------------------------------------------------------------------------------ | -| bild | Zeichenkette | Die Bildquellen-URL | -| onUpload | Funktion | Die Funktion, die aufgerufen wird, wenn ein Benutzer ein neues Bild hochlädt. Es erhält das `Datei` Objekt als Parameter | -| onRemove | Funktion | Die Funktion wird aufgerufen, wenn der Benutzer auf die Entfernen-Schaltfläche klickt. | -| onAbort | Funktion | Die Funktion wird aufgerufen, wenn der Benutzer während des Bilduploads auf die Abbrechen-Schaltfläche klickt. | -| isUploading | boolesch | Gibt an, ob ein Bild derzeit hochgeladen wird | -| Fehlermeldung | Zeichenkette | Eine optionale Fehlermeldung, die unterhalb des Bildeingangs angezeigt wird. | -| deaktiviert | boolesch | Wenn `true`, ist die gesamte Eingabe deaktiviert und die Schaltflächen sind nicht anklickbar | +| Props | Typ | Beschreibung | +| ------------- | ------------ | ------------------------------------------------------------------------------------------------------------------------ | +| bild | Zeichenkette | Die Bildquellen-URL | +| onUpload | Funktion | Die Funktion, die aufgerufen wird, wenn ein Benutzer ein neues Bild hochlädt. Es erhält das `Datei` Objekt als Parameter | +| onRemove | Funktion | Die Funktion wird aufgerufen, wenn der Benutzer auf die Entfernen-Schaltfläche klickt. | +| onAbort | Funktion | Die Funktion wird aufgerufen, wenn der Benutzer während des Bilduploads auf die Abbrechen-Schaltfläche klickt. | +| isUploading | boolesch | Gibt an, ob ein Bild derzeit hochgeladen wird | +| Fehlermeldung | Zeichenkette | Eine optionale Fehlermeldung, die unterhalb des Bildeingangs angezeigt wird. | +| deaktiviert | boolesch | Wenn `true`, ist die gesamte Eingabe deaktiviert und die Schaltflächen sind nicht anklickbar | diff --git a/packages/twenty-docs/l/de/twenty-ui/input/select.mdx b/packages/twenty-docs/l/de/twenty-ui/input/select.mdx index 2b7cb90ed7..e5af0e9919 100644 --- a/packages/twenty-docs/l/de/twenty-ui/input/select.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/input/select.mdx @@ -38,14 +38,14 @@ export const MyComponent = () => { -| "Eigenschaften" | Typ | Beschreibung | -| --------------- | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Klassenname | Zeichenkette | Optionale CSS-Klasse für zusätzliche Stilgebung | -| deaktiviert | boolesch | Wenn auf `true` gesetzt, wird die Benutzerinteraktion mit der Komponente deaktiviert | -| Beschriftung | string | Die Beschriftung, um den Zweck der `Select`-Komponente zu beschreiben | -| onChange | Funktion | Die Funktion, die aufgerufen wird, wenn sich die ausgewählten Werte ändern | -| optionen | Array | Repräsentiert die verfügbaren Optionen für die `Select`-Komponente. Es ist ein Array von Objekten, bei dem jedes Objekt ein `value` (die eindeutige Kennung), `label` (die eindeutige Kennung) und ein optionales `Icon` hat | -| wert | Zeichenkette | Repräsentiert den aktuell ausgewählten Wert. Es sollte mit einem der `value`-Eigenschaften im `options`-Array übereinstimmen | +| Props | Typ | Beschreibung | +| ------------ | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Klassenname | Zeichenkette | Optionale CSS-Klasse für zusätzliche Stilgebung | +| deaktiviert | boolesch | Wenn auf `true` gesetzt, wird die Benutzerinteraktion mit der Komponente deaktiviert | +| Beschriftung | string | Die Beschriftung, um den Zweck der `Select`-Komponente zu beschreiben | +| onChange | Funktion | Die Funktion, die aufgerufen wird, wenn sich die ausgewählten Werte ändern | +| optionen | Array | Repräsentiert die verfügbaren Optionen für die `Select`-Komponente. Es ist ein Array von Objekten, bei dem jedes Objekt ein `value` (die eindeutige Kennung), `label` (die eindeutige Kennung) und ein optionales `Icon` hat | +| wert | Zeichenkette | Repräsentiert den aktuell ausgewählten Wert. Es sollte mit einem der `value`-Eigenschaften im `options`-Array übereinstimmen | diff --git a/packages/twenty-docs/l/de/twenty-ui/input/text.mdx b/packages/twenty-docs/l/de/twenty-ui/input/text.mdx index fa47745a39..1cd1f85464 100644 --- a/packages/twenty-docs/l/de/twenty-ui/input/text.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/input/text.mdx @@ -48,7 +48,7 @@ export const MyComponent = () => { -| Eigenschaften | Typ | Beschreibung | +| Props | Typ | Beschreibung | | -------------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | | className | Zeichenkette | Optionaler Name für zusätzliche Stile | | Beschriftung | Zeichenkette | Stellt die Beschriftung für das Eingabefeld dar | @@ -100,15 +100,15 @@ export const MyComponent = () => { -| Eigenschaften | Typ | Beschreibung | -| ------------- | ------------ | ---------------------------------------------------------------------------------------- | -| onValidate | Funktion | Die Callback-Funktion, die Sie auslösen möchten, wenn der Benutzer die Eingabe validiert | -| minRows | nummer | Die minimale Anzahl von Zeilen für den Textbereich | -| Platzhalter | Zeichenkette | Der Platzhaltertext, den Sie anzeigen möchten, wenn der Textbereich leer ist | -| onFocus | Funktion | Die Callback-Funktion, die Sie auslösen möchten, wenn der Textbereich den Fokus erlangt | -| Variante | Zeichenkette | Die Variante der Eingabe. Optionen umfassen: `Standard`, `Ikone` und `Schaltfläche` | -| buttonTitle | Zeichenkette | Der Titel für die Schaltfläche (nur für die Schaltflächenvariante anwendbar) | -| wert | Zeichenkette | Der Initialwert für den Textbereich | +| Props | Typ | Beschreibung | +| ----------- | ------------ | ---------------------------------------------------------------------------------------- | +| onValidate | Funktion | Die Callback-Funktion, die Sie auslösen möchten, wenn der Benutzer die Eingabe validiert | +| minRows | nummer | Die minimale Anzahl von Zeilen für den Textbereich | +| Platzhalter | Zeichenkette | Der Platzhaltertext, den Sie anzeigen möchten, wenn der Textbereich leer ist | +| onFocus | Funktion | Die Callback-Funktion, die Sie auslösen möchten, wenn der Textbereich den Fokus erlangt | +| Variante | Zeichenkette | Die Variante der Eingabe. Optionen umfassen: `Standard`, `Ikone` und `Schaltfläche` | +| buttonTitle | Zeichenkette | Der Titel für die Schaltfläche (nur für die Schaltflächenvariante anwendbar) | +| wert | Zeichenkette | Der Initialwert für den Textbereich | @@ -146,13 +146,13 @@ export const MyComponent = () => { -| Eigenschaften | Typ | Beschreibung | -| ------------- | ------------ | ---------------------------------------------------------------------------- | -| deaktiviert | boolesch | Gibt an, ob der Textbereich deaktiviert ist | -| minRows | nummer | Minimale Anzahl sichtbarer Zeilen für den Textbereich. | -| onChange | Funktion | Rückruffunktion wird ausgelöst, wenn sich der Inhalt des Textbereichs ändert | -| Platzhalter | Zeichenkette | Platzhaltertext, der angezeigt wird, wenn der Textbereich leer ist | -| wert | Zeichenkette | Der aktuelle Wert des Textbereichs | +| Props | Typ | Beschreibung | +| ----------- | ------------ | ---------------------------------------------------------------------------- | +| deaktiviert | boolesch | Gibt an, ob der Textbereich deaktiviert ist | +| minRows | nummer | Minimale Anzahl sichtbarer Zeilen für den Textbereich. | +| onChange | Funktion | Rückruffunktion wird ausgelöst, wenn sich der Inhalt des Textbereichs ändert | +| Platzhalter | Zeichenkette | Platzhaltertext, der angezeigt wird, wenn der Textbereich leer ist | +| wert | Zeichenkette | Der aktuelle Wert des Textbereichs | diff --git a/packages/twenty-docs/l/de/twenty-ui/navigation/step-bar.mdx b/packages/twenty-docs/l/de/twenty-ui/navigation/step-bar.mdx index f2ce5c8d1b..0c0b0dea4f 100644 --- a/packages/twenty-docs/l/de/twenty-ui/navigation/step-bar.mdx +++ b/packages/twenty-docs/l/de/twenty-ui/navigation/step-bar.mdx @@ -30,9 +30,9 @@ export const MyComponent = () => { -| "Eigenschaften" | Typ | Beschreibung | -| --------------- | ------ | --------------------------------------------------------------------------------------------------------- | -| aktiverSchritt | nummer | Der Index des derzeit aktiven Schritts. Dies bestimmt, welcher Schritt visuell hervorgehoben werden soll. | +| Props | Typ | Beschreibung | +| -------------- | ------ | --------------------------------------------------------------------------------------------------------- | +| aktiverSchritt | nummer | Der Index des derzeit aktiven Schritts. Dies bestimmt, welcher Schritt visuell hervorgehoben werden soll. | diff --git a/packages/twenty-docs/l/it/developers/contribute/capabilities/backend-development/server-commands.mdx b/packages/twenty-docs/l/it/developers/contribute/capabilities/backend-development/server-commands.mdx index fd2cfb1b11..cf7e7a5515 100644 --- a/packages/twenty-docs/l/it/developers/contribute/capabilities/backend-development/server-commands.mdx +++ b/packages/twenty-docs/l/it/developers/contribute/capabilities/backend-development/server-commands.mdx @@ -1,6 +1,6 @@ --- title: Comandi Backend -icon: terminal +icon: terminale --- ## Comandi utili diff --git a/packages/twenty-docs/l/it/developers/extend/apps/layout.mdx b/packages/twenty-docs/l/it/developers/extend/apps/layout.mdx index aa6eef513d..cd64976449 100644 --- a/packages/twenty-docs/l/it/developers/extend/apps/layout.mdx +++ b/packages/twenty-docs/l/it/developers/extend/apps/layout.mdx @@ -1,5 +1,5 @@ --- -title: Disposizione +title: Layout description: Define views, navigation menu items, and page layouts to shape how your app appears in Twenty. icon: table-columns --- diff --git a/packages/twenty-docs/l/it/twenty-ui/input/icon-picker.mdx b/packages/twenty-docs/l/it/twenty-ui/input/icon-picker.mdx index 55304c3f0a..2ec212171e 100644 --- a/packages/twenty-docs/l/it/twenty-ui/input/icon-picker.mdx +++ b/packages/twenty-docs/l/it/twenty-ui/input/icon-picker.mdx @@ -40,7 +40,7 @@ export const MyComponent = () => { -| Props | Tipo | Descrizione | +| Proprietà | Tipo | Descrizione | | ---------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------- | | disabilitato | booleano | Disabilita il selettore di icone se impostato su `true` | | onChange | funzione | La funzione di callback attivata quando l'utente seleziona un'icona. Riceve un oggetto con le proprietà `iconKey` e `Icon` | diff --git a/packages/twenty-docs/l/it/twenty-ui/input/text.mdx b/packages/twenty-docs/l/it/twenty-ui/input/text.mdx index 5a7902c3a9..7961e740d4 100644 --- a/packages/twenty-docs/l/it/twenty-ui/input/text.mdx +++ b/packages/twenty-docs/l/it/twenty-ui/input/text.mdx @@ -48,7 +48,7 @@ export const MyComponent = () => { -| Proprietà | Tipo | Descrizione | +| Props | Tipo | Descrizione | | -------------------- | --------------- | -------------------------------------------------------------------------------------------------------------------------------- | | nomeClasse | stringa | Nome opzionale per lo stile aggiuntivo | | etichetta | stringa | Rappresenta l'etichetta per l'input | @@ -100,7 +100,7 @@ export const MyComponent = () => { -| Proprietà | Tipo | Descrizione | +| Props | Tipo | Descrizione | | -------------- | -------- | ------------------------------------------------------------------------------------- | | suValida | funzione | La funzione di callback che si vuole attivare quando l'utente valida l'input | | righeMinime | numero | Il numero minimo di righe per l'area di testo | @@ -146,7 +146,7 @@ export const MyComponent = () => { -| Proprietà | Tipo | Descrizione | +| Props | Tipo | Descrizione | | ------------- | -------- | --------------------------------------------------------------------------- | | disabilitato | booleano | Indica se l'area di testo è disabilitata | | righeMinime | numero | Numero minimo di righe visibili per l'area di testo. | diff --git a/packages/twenty-docs/l/pt/developers/extend/apps/layout.mdx b/packages/twenty-docs/l/pt/developers/extend/apps/layout.mdx index 36f2af8b5b..112fa155ed 100644 --- a/packages/twenty-docs/l/pt/developers/extend/apps/layout.mdx +++ b/packages/twenty-docs/l/pt/developers/extend/apps/layout.mdx @@ -20,7 +20,7 @@ Views, navigation items, and page layouts reference each other by `universalIden * A **page layout** of type `RECORD_PAGE` targets an object and can embed [front components](/l/pt/developers/extend/apps/front-components) inside its tabs as widgets. - + As visualizações são configurações salvas de como os registros de um objeto são exibidos — incluindo quais campos são visíveis, sua ordem e quaisquer filtros ou grupos aplicados. Use `defineView()` para enviar visualizações pré-configuradas com seu app: @@ -56,7 +56,7 @@ Pontos-chave: * `position` controla a ordenação quando existem várias visualizações para o mesmo objeto. - + Os itens do menu de navegação adicionam entradas personalizadas à barra lateral do espaço de trabalho. Use `defineNavigationMenuItem()` para vincular a visualizações, URLs externas ou objetos: diff --git a/packages/twenty-docs/l/pt/developers/extend/oauth.mdx b/packages/twenty-docs/l/pt/developers/extend/oauth.mdx index 079f4e3e9f..df973271bc 100644 --- a/packages/twenty-docs/l/pt/developers/extend/oauth.mdx +++ b/packages/twenty-docs/l/pt/developers/extend/oauth.mdx @@ -1,23 +1,23 @@ --- title: OAuth icon: chave -description: Authorization code flow with PKCE and client credentials for server-to-server access. +description: Fluxo de código de autorização com PKCE e credenciais de cliente para acesso servidor a servidor. --- -Twenty implements OAuth 2.0 with authorization code + PKCE for user-facing apps and client credentials for server-to-server access. Clients are registered dynamically via [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) — no manual setup in a dashboard. +A Twenty implementa OAuth 2.0 com código de autorização + PKCE para aplicações voltadas ao utilizador e credenciais de cliente para acesso servidor a servidor. Os clientes são registados dinamicamente via [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) — sem configuração manual num painel. -## When to Use OAuth +## Quando usar OAuth -| Cenário | Auth Method | -| --------------------------------------- | -------------------------------------------------------------------------------- | -| Internal scripts, automation | [API Key](/l/pt/developers/extend/api#authentication) | -| External app acting on behalf of a user | **OAuth — Authorization Code** | -| Server-to-server, no user context | **OAuth — Client Credentials** | -| Twenty App with UI extensions | [Apps](/l/pt/developers/extend/apps/getting-started) (OAuth is handled automatically) | +| Cenário | Método de autenticação | +| -------------------------------------------------- | --------------------------------------------------------------------------------------- | +| Scripts internos, automatização | [Chave de API](/l/pt/developers/extend/api#authentication) | +| Aplicação externa atuando em nome de um utilizador | **OAuth — Código de Autorização** | +| Servidor a servidor, sem contexto de utilizador | **OAuth — Credenciais do Cliente** | +| Aplicação Twenty com extensões de UI | [Aplicações](/l/pt/developers/extend/apps/getting-started) (OAuth é tratado automaticamente) | -## Register a Client +## Registar um cliente -Twenty supports **dynamic client registration** per [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591). No manual setup needed — register programmatically: +A Twenty suporta **registo dinâmico de clientes** conforme [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591). Sem necessidade de configuração manual — registe programaticamente: ```bash POST /oauth/register @@ -31,7 +31,7 @@ Content-Type: application/json } ``` -**Response:** +**Resposta:** ```json { @@ -43,23 +43,23 @@ Content-Type: application/json ``` -Store the `client_secret` securely — it cannot be retrieved later. +Guarde o `client_secret` com segurança — não poderá ser recuperado mais tarde. ## Escopos -| Scope | Acesso | -| -------- | ---------------------------------------------------- | -| `api` | Full read/write access to the Core and Metadata APIs | -| `perfil` | Read the authenticated user's profile information | +| Escopo | Acesso | +| -------- | ------------------------------------------------------- | +| `api` | Acesso total de leitura/escrita às APIs Core e Metadata | +| `perfil` | Leia as informações do perfil do utilizador autenticado | -Request scopes as a space-separated string: `scope=api profile` +Solicite escopos como uma cadeia separada por espaços: `scope=api profile` -## Authorization Code Flow +## Fluxo de Código de Autorização -Use this flow when your app acts on behalf of a Twenty user. +Use este fluxo quando a sua aplicação atuar em nome de um utilizador da Twenty. -### 1. Redirect the user to authorize +### 1. Redirecione o utilizador para autorizar ``` GET /oauth/authorize? @@ -72,29 +72,29 @@ GET /oauth/authorize? code_challenge_method=S256 ``` -| Parâmetro | Obrigatório | Descrição | -| ----------------------- | ----------- | ------------------------------------------------------------ | -| `client_id` | Sim | Your registered client ID | -| `response_type` | Sim | Must be `code` | -| `redirect_uri` | Sim | Must match a registered redirect URI | -| `scope` | Não | Space-separated scopes (defaults to `api`) | -| `estado` | Recomendado | Random string to prevent CSRF attacks | -| `code_challenge` | Recomendado | PKCE challenge (SHA-256 hash of verifier, base64url-encoded) | -| `code_challenge_method` | Recomendado | Must be `S256` when using PKCE | +| Parâmetro | Obrigatório | Descrição | +| ----------------------- | ----------- | ------------------------------------------------------------------- | +| `client_id` | Sim | O seu ID de cliente registado | +| `response_type` | Sim | Deve ser `code` | +| `redirect_uri` | Sim | Deve corresponder a um URI de redirecionamento registado | +| `scope` | Não | Escopos separados por espaços (predefinido para `api`) | +| `estado` | Recomendado | Cadeia aleatória para prevenir ataques CSRF | +| `code_challenge` | Recomendado | Desafio PKCE (hash SHA-256 do verificador, codificado em base64url) | +| `code_challenge_method` | Recomendado | Deve ser `S256` ao usar PKCE | -The user sees a consent screen and approves or denies access. +O utilizador vê um ecrã de consentimento e aprova ou nega o acesso. -### 2. Handle the callback +### 2. Trate o callback -After authorization, Twenty redirects back to your `redirect_uri`: +Após a autorização, a Twenty redireciona de volta para o seu `redirect_uri`: ``` https://myapp.com/callback?code=AUTH_CODE&state=random_state_value ``` -Verify that `state` matches what you sent. +Verifique se `state` corresponde ao que enviou. -### 3. Exchange the code for tokens +### 3. Troque o código por tokens ```bash POST /oauth/token @@ -108,7 +108,7 @@ client_secret=YOUR_CLIENT_SECRET& code_verifier=YOUR_PKCE_VERIFIER ``` -**Response:** +**Resposta:** ```json { @@ -119,14 +119,14 @@ code_verifier=YOUR_PKCE_VERIFIER } ``` -### 4. Use the access token +### 4. Use o token de acesso ```bash GET /rest/companies Authorization: Bearer ACCESS_TOKEN ``` -### 5. Refresh when expired +### 5. Atualize quando expirar ```bash POST /oauth/token @@ -138,9 +138,9 @@ client_id=YOUR_CLIENT_ID& client_secret=YOUR_CLIENT_SECRET ``` -## Client Credentials Flow +## Fluxo de Credenciais do Cliente -For server-to-server integrations with no user interaction: +Para integrações servidor a servidor sem interação do utilizador: ```bash POST /oauth/token @@ -152,38 +152,38 @@ client_secret=YOUR_CLIENT_SECRET& scope=api ``` -The returned token has workspace-level access, not tied to any specific user. +O token retornado tem acesso ao nível do espaço de trabalho, não vinculado a nenhum utilizador específico. -## Server Discovery +## Descoberta do servidor -Twenty publishes its OAuth configuration at a standard discovery endpoint: +A Twenty publica a sua configuração OAuth num endpoint padrão de descoberta: ``` GET /.well-known/oauth-authorization-server ``` -This returns all endpoints, supported grant types, scopes, and capabilities — useful for building generic OAuth clients. +Isto retorna todos os endpoints, tipos de concessão suportados, escopos e capacidades — útil para criar clientes OAuth genéricos. -## API Endpoints Summary +## Resumo de endpoints da API -| Endpoint | Finalidade | -| ----------------------------------------- | --------------------------- | -| `/.well-known/oauth-authorization-server` | Server metadata discovery | -| `/oauth/register` | Dynamic client registration | -| `/oauth/authorize` | User authorization | -| `/oauth/token` | Token exchange and refresh | +| Endpoint | Finalidade | +| ----------------------------------------- | ----------------------------------- | +| `/.well-known/oauth-authorization-server` | Descoberta de metadados do servidor | +| `/oauth/register` | Registo dinâmico de cliente | +| `/oauth/authorize` | Autorização do utilizador | +| `/oauth/token` | Troca e atualização de tokens | | Ambiente | URL base | | ------------------ | ------------------------ | | **Nuvem** | `https://api.twenty.com` | | **Auto-hospedado** | `https://{your-domain}` | -## OAuth vs API Keys +## OAuth vs Chaves de API -| | Chaves API | OAuth | -| ------------------ | ----------------------- | -------------------------------------- | -| **Configuração** | Generate in Settings | Register a client, implement flow | -| **User context** | None (workspace-level) | Specific user's permissions | -| **Melhor para** | Scripts, internal tools | External apps, multi-user integrations | -| **Token rotation** | Manual | Automatic via refresh tokens | -| **Scoped access** | Full API access | Granular via scopes | +| | Chaves API | OAuth | +| ----------------------------- | ------------------------------------ | ------------------------------------------------ | +| **Configuração** | Gerar em Configurações | Registar um cliente, implementar o fluxo | +| **Contexto do utilizador** | Nenhum (nível de espaço de trabalho) | Permissões de um utilizador específico | +| **Melhor para** | Scripts, ferramentas internas | Aplicações externas, integrações multiutilizador | +| **Rotação de tokens** | Manual | Automática via tokens de atualização | +| **Acesso baseado em escopos** | Acesso total à API | Granular por escopos | diff --git a/packages/twenty-docs/l/ru/developers/extend/oauth.mdx b/packages/twenty-docs/l/ru/developers/extend/oauth.mdx index 28a7d3be17..476eadb4b3 100644 --- a/packages/twenty-docs/l/ru/developers/extend/oauth.mdx +++ b/packages/twenty-docs/l/ru/developers/extend/oauth.mdx @@ -1,23 +1,23 @@ --- title: OAuth icon: ключ -description: Authorization code flow with PKCE and client credentials for server-to-server access. +description: Поток авторизационного кода с PKCE и учётными данными клиента для доступа между серверами. --- -Twenty implements OAuth 2.0 with authorization code + PKCE for user-facing apps and client credentials for server-to-server access. Clients are registered dynamically via [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) — no manual setup in a dashboard. +Twenty реализует OAuth 2.0 с потоком авторизационного кода + PKCE для пользовательских приложений и с учётными данными клиента для доступа между серверами. Клиенты регистрируются динамически по [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) — никакой ручной настройки в панели управления. -## When to Use OAuth +## Когда использовать OAuth -| Сценарий | Auth Method | -| --------------------------------------- | -------------------------------------------------------------------------------- | -| Internal scripts, automation | [API Key](/l/ru/developers/extend/api#authentication) | -| External app acting on behalf of a user | **OAuth — Authorization Code** | -| Server-to-server, no user context | **OAuth — Client Credentials** | -| Twenty App with UI extensions | [Apps](/l/ru/developers/extend/apps/getting-started) (OAuth is handled automatically) | +| Сценарий | Метод аутентификации | +| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | +| Внутренние скрипты, автоматизация | [Ключ API](/l/ru/developers/extend/api#authentication) | +| Внешнее приложение, действующее от имени пользователя | **OAuth — авторизационный код** | +| Между серверами, без контекста пользователя | **OAuth — клиентские учётные данные** | +| Приложение Twenty с расширениями пользовательского интерфейса (UI) | [Приложения](/l/ru/developers/extend/apps/getting-started) (OAuth обрабатывается автоматически) | -## Register a Client +## Зарегистрировать клиента -Twenty supports **dynamic client registration** per [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591). No manual setup needed — register programmatically: +Twenty поддерживает **динамическую регистрацию клиентов** по [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591). Ручная настройка не требуется — регистрируйте программно: ```bash POST /oauth/register @@ -31,7 +31,7 @@ Content-Type: application/json } ``` -**Response:** +**Ответ:** ```json { @@ -43,23 +43,23 @@ Content-Type: application/json ``` -Store the `client_secret` securely — it cannot be retrieved later. +Храните `client_secret` в надёжном месте — позже его нельзя будет получить. ## Области действия -| Scope | Доступ | -| --------- | ---------------------------------------------------- | -| `api` | Full read/write access to the Core and Metadata APIs | -| `profile` | Read the authenticated user's profile information | +| Область действия | Доступ | +| ---------------- | ----------------------------------------------------------- | +| `api` | Полный доступ на чтение/запись к Core и Metadata API | +| `profile` | Чтение информации профиля аутентифицированного пользователя | -Request scopes as a space-separated string: `scope=api profile` +Запрашивайте области действия как строку, разделённую пробелами: `scope=api profile` -## Authorization Code Flow +## Поток авторизационного кода -Use this flow when your app acts on behalf of a Twenty user. +Используйте этот поток, когда ваше приложение действует от имени пользователя Twenty. -### 1. Redirect the user to authorize +### 1. Перенаправьте пользователя для авторизации ``` GET /oauth/authorize? @@ -72,29 +72,29 @@ GET /oauth/authorize? code_challenge_method=S256 ``` -| Параметр | Обязательно | Описание | -| ----------------------- | ------------- | ------------------------------------------------------------ | -| `client_id` | Да | Your registered client ID | -| `response_type` | Да | Must be `code` | -| `redirect_uri` | Да | Must match a registered redirect URI | -| `scope` | Нет | Space-separated scopes (defaults to `api`) | -| `state` | Рекомендуется | Random string to prevent CSRF attacks | -| `code_challenge` | Рекомендуется | PKCE challenge (SHA-256 hash of verifier, base64url-encoded) | -| `code_challenge_method` | Рекомендуется | Must be `S256` when using PKCE | +| Параметр | Обязательно | Описание | +| ----------------------- | ------------- | --------------------------------------------------------------- | +| `client_id` | Да | Идентификатор вашего зарегистрированного клиента | +| `response_type` | Да | Должно быть `code` | +| `redirect_uri` | Да | Должен совпадать с зарегистрированным redirect URI | +| `scope` | Нет | Области действия, разделённые пробелами (по умолчанию `api`) | +| `state` | Рекомендуется | Случайная строка для предотвращения CSRF-атак | +| `code_challenge` | Рекомендуется | Вызов PKCE (хэш SHA-256 от верификатора, в кодировке base64url) | +| `code_challenge_method` | Рекомендуется | Должно быть `S256` при использовании PKCE | -The user sees a consent screen and approves or denies access. +Пользователь видит экран согласия и подтверждает или отклоняет доступ. -### 2. Handle the callback +### 2. Обработайте обратный вызов -After authorization, Twenty redirects back to your `redirect_uri`: +После авторизации Twenty перенаправляет обратно на ваш `redirect_uri`: ``` https://myapp.com/callback?code=AUTH_CODE&state=random_state_value ``` -Verify that `state` matches what you sent. +Проверьте, что `state` совпадает с отправленным значением. -### 3. Exchange the code for tokens +### 3. Обменяйте код на токены ```bash POST /oauth/token @@ -108,7 +108,7 @@ client_secret=YOUR_CLIENT_SECRET& code_verifier=YOUR_PKCE_VERIFIER ``` -**Response:** +**Ответ:** ```json { @@ -119,14 +119,14 @@ code_verifier=YOUR_PKCE_VERIFIER } ``` -### 4. Use the access token +### 4. Используйте токен доступа ```bash GET /rest/companies Authorization: Bearer ACCESS_TOKEN ``` -### 5. Refresh when expired +### 5. Обновляйте при истечении срока действия ```bash POST /oauth/token @@ -138,9 +138,9 @@ client_id=YOUR_CLIENT_ID& client_secret=YOUR_CLIENT_SECRET ``` -## Client Credentials Flow +## Поток клиентских учётных данных -For server-to-server integrations with no user interaction: +Для интеграций между серверами без участия пользователя: ```bash POST /oauth/token @@ -152,38 +152,38 @@ client_secret=YOUR_CLIENT_SECRET& scope=api ``` -The returned token has workspace-level access, not tied to any specific user. +Возвращаемый токен имеет доступ на уровне рабочей области и не привязан к конкретному пользователю. -## Server Discovery +## Обнаружение сервера -Twenty publishes its OAuth configuration at a standard discovery endpoint: +Twenty публикует свою конфигурацию OAuth на стандартной конечной точке обнаружения: ``` GET /.well-known/oauth-authorization-server ``` -This returns all endpoints, supported grant types, scopes, and capabilities — useful for building generic OAuth clients. +Это возвращает все конечные точки, поддерживаемые типы грантов, области действия и возможности — полезно для создания универсальных OAuth-клиентов. -## API Endpoints Summary +## Сводка конечных точек API -| Конечная точка | Назначение | -| ----------------------------------------- | --------------------------- | -| `/.well-known/oauth-authorization-server` | Server metadata discovery | -| `/oauth/register` | Dynamic client registration | -| `/oauth/authorize` | User authorization | -| `/oauth/token` | Token exchange and refresh | +| Конечная точка | Назначение | +| ----------------------------------------- | --------------------------------- | +| `/.well-known/oauth-authorization-server` | Обнаружение метаданных сервера | +| `/oauth/register` | Динамическая регистрация клиентов | +| `/oauth/authorize` | Авторизация пользователя | +| `/oauth/token` | Обмен и обновление токена | | Среда | Базовый URL | | --------------------------- | ------------------------ | | **Облако** | `https://api.twenty.com` | | **Самостоятельный хостинг** | `https://{your-domain}` | -## OAuth vs API Keys +## OAuth против ключей API -| | API ключи | OAuth | -| ---------------------------- | ----------------------- | -------------------------------------- | -| **Настройка** | Generate in Settings | Register a client, implement flow | -| **User context** | None (workspace-level) | Specific user's permissions | -| **Лучше всего подходит для** | Scripts, internal tools | External apps, multi-user integrations | -| **Token rotation** | Вручную | Automatic via refresh tokens | -| **Scoped access** | Full API access | Granular via scopes | +| | API ключи | OAuth | +| ------------------------------- | ------------------------------------- | ----------------------------------------------------- | +| **Настройка** | Создаются в разделе «Настройки» | Зарегистрировать клиента, реализовать поток | +| **Контекст пользователя** | Отсутствует (уровень рабочей области) | Права конкретного пользователя | +| **Лучше всего подходит для** | Скрипты, внутренние инструменты | Внешние приложения, мультипользовательские интеграции | +| **Ротация токенов** | Вручную | Автоматическая с помощью refresh-токенов | +| **Доступ по областям действия** | Полный доступ к API | Детализированный через области действия | diff --git a/packages/twenty-docs/l/tr/developers/extend/oauth.mdx b/packages/twenty-docs/l/tr/developers/extend/oauth.mdx index cc34aabe2e..61b8409f4d 100644 --- a/packages/twenty-docs/l/tr/developers/extend/oauth.mdx +++ b/packages/twenty-docs/l/tr/developers/extend/oauth.mdx @@ -1,23 +1,23 @@ --- title: OAuth icon: anahtar -description: Authorization code flow with PKCE and client credentials for server-to-server access. +description: PKCE'li yetkilendirme kodu akışı ve sunucudan sunucuya erişim için istemci kimlik bilgileri. --- -Twenty implements OAuth 2.0 with authorization code + PKCE for user-facing apps and client credentials for server-to-server access. Clients are registered dynamically via [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) — no manual setup in a dashboard. +Twenty, kullanıcıya dönük uygulamalar için yetkilendirme kodu + PKCE'yi ve sunucudan sunucuya erişim için istemci kimlik bilgilerini kullanarak OAuth 2.0'ı uygular. İstemciler [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) aracılığıyla dinamik olarak kaydedilir — bir kontrol panelinde manuel kurulum gerekmez. -## When to Use OAuth +## OAuth Ne Zaman Kullanılır -| Senaryo | Auth Method | -| --------------------------------------- | -------------------------------------------------------------------------------- | -| Internal scripts, automation | [API Key](/l/tr/developers/extend/api#authentication) | -| External app acting on behalf of a user | **OAuth — Authorization Code** | -| Server-to-server, no user context | **OAuth — Client Credentials** | -| Twenty App with UI extensions | [Apps](/l/tr/developers/extend/apps/getting-started) (OAuth is handled automatically) | +| Senaryo | Kimlik Doğrulama Yöntemi | +| --------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| Dahili betikler, otomasyon | [API Anahtarı](/l/tr/developers/extend/api#authentication) | +| Bir kullanıcının adına hareket eden harici uygulama | **OAuth — Yetkilendirme Kodu** | +| Sunucudan sunucuya, kullanıcı bağlamı yok | **OAuth — İstemci Kimlik Bilgileri** | +| UI uzantılarına sahip Twenty Uygulaması | [Uygulamalar](/l/tr/developers/extend/apps/getting-started) (OAuth otomatik olarak yönetilir) | -## Register a Client +## Bir İstemci Kaydedin -Twenty supports **dynamic client registration** per [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591). No manual setup needed — register programmatically: +Twenty, [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591) uyarınca **dinamik istemci kaydını** destekler. Manuel kurulum gerekmez — programatik olarak kaydedin: ```bash POST /oauth/register @@ -31,7 +31,7 @@ Content-Type: application/json } ``` -**Response:** +**Yanıt:** ```json { @@ -43,23 +43,23 @@ Content-Type: application/json ``` -Store the `client_secret` securely — it cannot be retrieved later. +`client_secret` değerini güvenli bir şekilde saklayın — daha sonra geri alınamaz. ## Kapsamlar -| Scope | Erişim | -| --------- | ---------------------------------------------------- | -| `api` | Full read/write access to the Core and Metadata APIs | -| `profile` | Read the authenticated user's profile information | +| Kapsam | Erişim | +| --------- | ---------------------------------------------------------- | +| `api` | Core ve Metadata API'lerine tam okuma/yazma erişimi | +| `profile` | Kimliği doğrulanmış kullanıcının profil bilgilerini okuyun | -Request scopes as a space-separated string: `scope=api profile` +Kapsamları boşlukla ayrılmış bir dize olarak isteyin: `scope=api profile` -## Authorization Code Flow +## Yetkilendirme Kodu Akışı -Use this flow when your app acts on behalf of a Twenty user. +Uygulamanız bir Twenty kullanıcısı adına hareket ettiğinde bu akışı kullanın. -### 1. Redirect the user to authorize +### 1. Kullanıcıyı yetkilendirmek için yönlendirin ``` GET /oauth/authorize? @@ -72,29 +72,29 @@ GET /oauth/authorize? code_challenge_method=S256 ``` -| Parametre | Zorunlu | Açıklama | -| ----------------------- | -------- | ------------------------------------------------------------ | -| `client_id` | Evet | Your registered client ID | -| `response_type` | Evet | Must be `code` | -| `redirect_uri` | Evet | Must match a registered redirect URI | -| `scope` | Hayır | Space-separated scopes (defaults to `api`) | -| `state` | Önerilen | Random string to prevent CSRF attacks | -| `code_challenge` | Önerilen | PKCE challenge (SHA-256 hash of verifier, base64url-encoded) | -| `code_challenge_method` | Önerilen | Must be `S256` when using PKCE | +| Parametre | Zorunlu | Açıklama | +| ----------------------- | -------- | ------------------------------------------------------------------------ | +| `client_id` | Evet | Kayıtlı istemci kimliğiniz | +| `response_type` | Evet | `code` olmalıdır | +| `redirect_uri` | Evet | Kayıtlı bir yönlendirme URI'siyle eşleşmelidir | +| `scope` | Hayır | Boşlukla ayrılmış kapsamlar (varsayılan: `api`) | +| `state` | Önerilen | CSRF saldırılarını önlemek için rastgele bir dize | +| `code_challenge` | Önerilen | PKCE challenge (doğrulayıcının SHA-256 karması, base64url ile kodlanmış) | +| `code_challenge_method` | Önerilen | PKCE kullanılırken `S256` olmalıdır | -The user sees a consent screen and approves or denies access. +Kullanıcı bir onay ekranı görür ve erişimi onaylar veya reddeder. -### 2. Handle the callback +### 2. Geri dönüşü işleyin -After authorization, Twenty redirects back to your `redirect_uri`: +Yetkilendirmeden sonra, Twenty `redirect_uri` adresinize geri yönlendirir: ``` https://myapp.com/callback?code=AUTH_CODE&state=random_state_value ``` -Verify that `state` matches what you sent. +`state` değerinin gönderdiğinizle eşleştiğini doğrulayın. -### 3. Exchange the code for tokens +### 3. Kodu belirteçlerle değiş tokuş edin ```bash POST /oauth/token @@ -108,7 +108,7 @@ client_secret=YOUR_CLIENT_SECRET& code_verifier=YOUR_PKCE_VERIFIER ``` -**Response:** +**Yanıt:** ```json { @@ -119,14 +119,14 @@ code_verifier=YOUR_PKCE_VERIFIER } ``` -### 4. Use the access token +### 4. Erişim belirtecini kullanın ```bash GET /rest/companies Authorization: Bearer ACCESS_TOKEN ``` -### 5. Refresh when expired +### 5. Süresi dolduğunda yenileyin ```bash POST /oauth/token @@ -138,9 +138,9 @@ client_id=YOUR_CLIENT_ID& client_secret=YOUR_CLIENT_SECRET ``` -## Client Credentials Flow +## İstemci Kimlik Bilgileri Akışı -For server-to-server integrations with no user interaction: +Sunucudan sunucuya, kullanıcı etkileşimi olmayan entegrasyonlar için: ```bash POST /oauth/token @@ -152,38 +152,38 @@ client_secret=YOUR_CLIENT_SECRET& scope=api ``` -The returned token has workspace-level access, not tied to any specific user. +Döndürülen belirteç, belirli bir kullanıcıya bağlı olmayan, çalışma alanı düzeyinde erişime sahiptir. -## Server Discovery +## Sunucu Keşfi -Twenty publishes its OAuth configuration at a standard discovery endpoint: +Twenty, OAuth yapılandırmasını standart bir keşif uç noktasında yayımlar: ``` GET /.well-known/oauth-authorization-server ``` -This returns all endpoints, supported grant types, scopes, and capabilities — useful for building generic OAuth clients. +Bu, tüm uç noktaları, desteklenen grant türlerini, kapsamları ve yetenekleri döndürür — genel OAuth istemcileri oluşturmak için kullanışlıdır. -## API Endpoints Summary +## API Uç Noktaları Özeti -| Uç nokta | Amaç | -| ----------------------------------------- | --------------------------- | -| `/.well-known/oauth-authorization-server` | Server metadata discovery | -| `/oauth/register` | Dynamic client registration | -| `/oauth/authorize` | User authorization | -| `/oauth/token` | Token exchange and refresh | +| Uç nokta | Amaç | +| ----------------------------------------- | ----------------------------- | +| `/.well-known/oauth-authorization-server` | Sunucu üstverisi keşfi | +| `/oauth/register` | Dinamik istemci kaydı | +| `/oauth/authorize` | Kullanıcı yetkilendirmesi | +| `/oauth/token` | Belirteç değişimi ve yenileme | | Ortam | Temel URL | | ---------------------------- | ------------------------ | | **Bulut** | `https://api.twenty.com` | | **Kendi Kendine Barındırma** | `https://{your-domain}` | -## OAuth vs API Keys +## OAuth ve API Anahtarları -| | API Anahtarları | OAuth | -| ------------------ | ----------------------- | -------------------------------------- | -| **Kurulum** | Generate in Settings | Register a client, implement flow | -| **User context** | None (workspace-level) | Specific user's permissions | -| **En uygun** | Scripts, internal tools | External apps, multi-user integrations | -| **Token rotation** | Manuel | Automatic via refresh tokens | -| **Scoped access** | Full API access | Granular via scopes | +| | API Anahtarları | OAuth | +| ------------------------- | -------------------------- | -------------------------------------------------- | +| **Kurulum** | Ayarlar'da oluşturun | Bir istemci kaydedin, akışı uygulayın | +| **Kullanıcı bağlamı** | Yok (çalışma alanı düzeyi) | Belirli bir kullanıcının izinleri | +| **En uygun** | Betikler, dahili araçlar | Harici uygulamalar, çok kullanıcılı entegrasyonlar | +| **Belirteç döndürme** | Manuel | Yenileme belirteçleri aracılığıyla otomatik olarak | +| **Kapsama dayalı erişim** | Tam API erişimi | Kapsamlar aracılığıyla ayrıntılı | diff --git a/packages/twenty-docs/l/tr/user-guide/layout/overview.mdx b/packages/twenty-docs/l/tr/user-guide/layout/overview.mdx index d7e5aeb6ce..454c457ec7 100644 --- a/packages/twenty-docs/l/tr/user-guide/layout/overview.mdx +++ b/packages/twenty-docs/l/tr/user-guide/layout/overview.mdx @@ -9,13 +9,13 @@ Twenty'nin yerleşimi üç düzeyde özelleştirilebilir: uygulamada nasıl gezi Sol kenar çubuğu tamamen özelleştirilebilir. Şunları yapabilirsiniz: -* **Öğeleri sürükleyip bırakarak yeniden sıralayın** +* **Öğeleri yeniden sıralayın** sürükleyip bırakarak * **Klasörler oluşturun** ilgili nesneleri ve görünümleri gruplamak için * **Nesneleri gizleyin** — kullanmadıklarınızı * **Özel bağlantılar ekleyin** harici araçlara * **Favorileri sabitleyin** görünümlere, kayıtlara veya aramalara hızlı erişim için -[Gezinme başvurusu →](/l/tr/user-guide/layout/capabilities/navigation) +[Gezinme referansı →](/l/tr/user-guide/layout/capabilities/navigation) ## Görünümler @@ -42,4 +42,4 @@ Bir kaydı açtığınızda, ayrıntı sayfası yapılandırılabilir sekmeler v Komut menüsünden yerleşim özelleştirme moduna girin (`Cmd+K` → "Kayıt sayfası yerleşimini düzenle"). -[Kayıt sayfaları başvurusu →](/l/tr/user-guide/layout/capabilities/record-pages) +[Kayıt sayfaları referansı →](/l/tr/user-guide/layout/capabilities/record-pages)