i18n - docs translations (#17586)

Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
This commit is contained in:
github-actions[bot]
2026-01-30 17:25:52 +01:00
committed by GitHub
parent febab2760a
commit 6462ff6c5f
11 changed files with 141 additions and 141 deletions
@@ -217,12 +217,12 @@ Once you've switched workspaces with `auth:switch`, all subsequent commands will
يوفّر SDK أربع دوال مساعدة مع تحقق مدمج لتعريف كيانات تطبيقك:
| دالة | الغرض |
| ------------------ | ---------------------------------------- |
| `defineApplication()` | تهيئة بيانات التطبيق الوصفية |
| `defineObject()` | تعريف كائنات مخصصة مع حقول |
| `defineFunction()` | تعريف وظائف منطقية مع معالجات |
| `defineRole()` | تهيئة صلاحيات الدور والوصول إلى الكائنات |
| دالة | الغرض |
| --------------------- | ---------------------------------------- |
| `defineApplication()` | تهيئة بيانات التطبيق الوصفية |
| `defineObject()` | تعريف كائنات مخصصة مع حقول |
| `defineFunction()` | تعريف وظائف منطقية مع معالجات |
| `defineRole()` | تهيئة صلاحيات الدور والوصول إلى الكائنات |
تتحقق هذه الدوال من تكوينك في وقت التشغيل وتوفر إكمالًا تلقائيًا أفضل في بيئة التطوير وأمان أنواع أعلى.
@@ -319,7 +319,7 @@ export default defineObject({
* **كيفية تشغيل وظائفه**: الدور الذي تستخدمه للأذونات.
* **متغيرات (اختياري)**: أزواج مفتاح-قيمة تُعرض لوظائفك كمتغيرات بيئة.
استخدم `defineApplication()` لتعريف تهيئة تطبيقك:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ export default defineApplication({
* حقول `universalIdentifier` هي معرّفات حتمية تخصك؛ أنشئها مرة واحدة واحتفظ بها ثابتة عبر عمليات المزامنة.
* `applicationVariables` تصبح متغيرات بيئة لوظائفك (على سبيل المثال، `DEFAULT_RECIPIENT_NAME` متاح كـ `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` يجب أن يطابق الدور الذي تعرّفه في ملف `*.role.ts` (انظر أدناه).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### الأدوار والصلاحيات
يمكن للتطبيقات تعريف أدوار تُغلّف الصلاحيات على كائنات وإجراءات مساحة العمل لديك. يعين الحقل `defaultRoleUniversalIdentifier` في `application.config.ts` الدور الافتراضي الذي تستخدمه وظائف المنطق في تطبيقك.
يمكن للتطبيقات تعريف أدوار تُغلّف الصلاحيات على كائنات وإجراءات مساحة العمل لديك. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* مفتاح واجهة البرمجة في وقت التشغيل المحقون باسم `TWENTY_API_KEY` مستمد من دور الوظيفة الافتراضي هذا.
* سيُقيَّد العميل مضبوط الأنواع بالأذونات الممنوحة لذلك الدور.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
يُشار بعد ذلك إلى `universalIdentifier` لهذا الدور في `application.config.ts` باسم `defaultRoleUniversalIdentifier`. بعبارة أخرى:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. بعبارة أخرى:
* **\\*.role.ts** يحدد ما يمكن أن يفعله الدور الافتراضي للوظيفة.
* **application.config.ts** يشير إلى ذلك الدور بحيث ترث وظائفك صلاحياته.
@@ -606,8 +606,8 @@ const { me } = await client.query({ me: { id: true, displayName: true } });
الملاحظات:
* لا تحتاج إلى تمرير عنوان URL أو مفتاح واجهة برمجة التطبيقات إلى العميل المُولَّد. يقوم بقراءة `TWENTY_API_URL` و`TWENTY_API_KEY` من process.env وقت التشغيل.
* تُحدَّد أذونات مفتاح واجهة برمجة التطبيقات بواسطة الدور المشار إليه في `application.config.ts` عبر `defaultRoleUniversalIdentifier`. هذا هو الدور الافتراضي الذي تستخدمه الوظائف المنطقية في تطبيقك.
* يمكن للتطبيقات تعريف أدوار لاتباع مبدأ أقل الامتياز. امنح فقط الأذونات التي تحتاجها وظائفك، ثم وجّه `defaultRoleUniversalIdentifier` إلى المعرّف الشامل لذلك الدور.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. هذا هو الدور الافتراضي الذي تستخدمه الوظائف المنطقية في تطبيقك.
* يمكن للتطبيقات تعريف أدوار لاتباع مبدأ أقل الامتياز. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### مثال Hello World
@@ -217,12 +217,12 @@ twenty-sdk poskytuje typované stavební bloky a pomocné funkce, které použí
SDK poskytuje čtyři pomocné funkce s vestavěnou validací pro definování entit vaší aplikace:
| Funkce | Účel |
| ------------------ | ------------------------------------------------ |
| `defineApplication()` | Konfigurace metadat aplikace |
| `defineObject()` | Definice vlastních objektů s poli |
| `defineFunction()` | Definice logických funkcí s obslužnými funkcemi |
| `defineRole()` | Konfigurace oprávnění rolí a přístupu k objektům |
| Funkce | Účel |
| --------------------- | ------------------------------------------------ |
| `defineApplication()` | Konfigurace metadat aplikace |
| `defineObject()` | Definice vlastních objektů s poli |
| `defineFunction()` | Definice logických funkcí s obslužnými funkcemi |
| `defineRole()` | Konfigurace oprávnění rolí a přístupu k objektům |
Tyto funkce validují vaši konfiguraci za běhu a poskytují lepší automatické doplňování v IDE a lepší typovou bezpečnost.
@@ -319,7 +319,7 @@ Každá aplikace má jeden soubor `application.config.ts`, který popisuje:
* **Jak běží její funkce**: kterou roli používají pro oprávnění.
* **(Volitelné) proměnné**: dvojice klíč–hodnota zpřístupněné vašim funkcím jako proměnné prostředí.
K definování konfigurace aplikace použijte `defineApplication()`:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Poznámky:
* Pole `universalIdentifier` jsou deterministická ID, která vlastníte; vygenerujte je jednou a udržujte je stabilní napříč synchronizacemi.
* `applicationVariables` se stanou proměnnými prostředí pro vaše funkce (například `DEFAULT_RECIPIENT_NAME` je dostupné jako `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` se musí shodovat s rolí, kterou definujete ve svém souboru `*.role.ts` (viz níže).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Role a oprávnění
Aplikace mohou definovat role, které zapouzdřují oprávnění k objektům a akcím ve vašem pracovním prostoru. Pole `defaultRoleUniversalIdentifier` v `application.config.ts` určuje výchozí roli používanou logickými funkcemi vaší aplikace.
Aplikace mohou definovat role, které zapouzdřují oprávnění k objektům a akcím ve vašem pracovním prostoru. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* Běhový klíč API vložený jako `TWENTY_API_KEY` je odvozen z této výchozí role funkcí.
* Typovaný klient bude omezen oprávněními udělenými této roli.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
Na `universalIdentifier` této role se poté odkazuje v `application.config.ts` jako na `defaultRoleUniversalIdentifier`. Jinými slovy:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Jinými slovy:
* **\*.role.ts** definuje, co může výchozí role funkce dělat.
* **application.config.ts** ukazuje na tuto roli, aby vaše funkce zdědily její oprávnění.
@@ -606,8 +606,8 @@ Když vaše funkce běží na Twenty, platforma před spuštěním kódu vloží
Poznámky:
* Není nutné předávat URL ani klíč API vygenerovanému klientovi. Za běhu čte `TWENTY_API_URL` a `TWENTY_API_KEY` z process.env.
* Oprávnění API klíče jsou určena rolí odkazovanou v `application.config.ts` prostřednictvím `defaultRoleUniversalIdentifier`. Toto je výchozí role používaná logickými funkcemi vaší aplikace.
* Aplikace mohou definovat role podle principu nejmenších oprávnění. Udělte pouze oprávnění, která vaše funkce potřebují, a poté nastavte `defaultRoleUniversalIdentifier` na univerzální identifikátor této role.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Toto je výchozí role používaná logickými funkcemi vaší aplikace.
* Aplikace mohou definovat role podle principu nejmenších oprávnění. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Příklad Hello World
@@ -217,12 +217,12 @@ Das twenty-sdk stellt typisierte Bausteine und Hilfsfunktionen bereit, die Sie i
Das SDK stellt vier Hilfsfunktionen mit eingebauter Validierung bereit, um Ihre App-Entitäten zu definieren:
| Funktion | Zweck |
| ------------------ | ---------------------------------------------------- |
| `defineApplication()` | Anwendungsmetadaten konfigurieren |
| `defineObject()` | Benutzerdefinierte Objekte mit Feldern definieren |
| `defineFunction()` | Logikfunktionen mit Handlern definieren |
| `defineRole()` | Rollenberechtigungen und Objektzugriff konfigurieren |
| Funktion | Zweck |
| --------------------- | ---------------------------------------------------- |
| `defineApplication()` | Anwendungsmetadaten konfigurieren |
| `defineObject()` | Benutzerdefinierte Objekte mit Feldern definieren |
| `defineFunction()` | Logikfunktionen mit Handlern definieren |
| `defineRole()` | Rollenberechtigungen und Objektzugriff konfigurieren |
Diese Funktionen validieren Ihre Konfiguration zur Laufzeit und bieten bessere IDE-Autovervollständigung sowie Typsicherheit.
@@ -319,7 +319,7 @@ Jede App hat eine einzelne Datei `application.config.ts`, die Folgendes beschrei
* **Wie ihre Funktionen ausgeführt werden**: welche Rolle sie für Berechtigungen verwenden.
* **(Optional) Variablen**: SchlüsselWert-Paare, die Ihren Funktionen als Umgebungsvariablen zur Verfügung gestellt werden.
Verwenden Sie `defineApplication()`, um Ihre Anwendungskonfiguration zu definieren:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Notizen:
* `universalIdentifier`-Felder sind deterministische IDs, die Sie besitzen; generieren Sie sie einmal und halten Sie sie über Synchronisierungen hinweg stabil.
* `applicationVariables` werden zu Umgebungsvariablen für Ihre Funktionen (zum Beispiel ist `DEFAULT_RECIPIENT_NAME` als `process.env.DEFAULT_RECIPIENT_NAME` verfügbar).
* `defaultRoleUniversalIdentifier` muss mit der Rolle übereinstimmen, die Sie in Ihrer `*.role.ts`-Datei definieren (siehe unten).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Rollen und Berechtigungen
Anwendungen können Rollen definieren, die Berechtigungen für die Objekte und Aktionen Ihres Workspaces kapseln. Das Feld `defaultRoleUniversalIdentifier` in `application.config.ts` legt die Standardrolle fest, die von den Logikfunktionen Ihrer App verwendet wird.
Anwendungen können Rollen definieren, die Berechtigungen für die Objekte und Aktionen Ihres Workspaces kapseln. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* Der zur Laufzeit als `TWENTY_API_KEY` injizierte API-Schlüssel wird von dieser Standard-Funktionsrolle abgeleitet.
* Der typisierte Client ist auf die dieser Rolle gewährten Berechtigungen beschränkt.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
Der `universalIdentifier` dieser Rolle wird anschließend in `application.config.ts` als `defaultRoleUniversalIdentifier` referenziert. Anders ausgedrückt:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Anders ausgedrückt:
* **\*.role.ts** definiert, was die Standard-Funktionsrolle darf.
* **application.config.ts** verweist auf diese Rolle, sodass Ihre Funktionen deren Berechtigungen erben.
@@ -606,8 +606,8 @@ Wenn Ihre Funktion auf Twenty läuft, injiziert die Plattform vor der Ausführun
Notizen:
* Sie müssen dem generierten Client weder URL noch API-Schlüssel übergeben. Er liest `TWENTY_API_URL` und `TWENTY_API_KEY` zur Laufzeit aus process.env.
* Die Berechtigungen des API-Schlüssels werden durch die Rolle bestimmt, auf die in Ihrer `application.config.ts` über `defaultRoleUniversalIdentifier` verwiesen wird. Dies ist die Standardrolle, die von den Logikfunktionen Ihrer Anwendung verwendet wird.
* Anwendungen können Rollen definieren, um das Least-Privilege-Prinzip einzuhalten. Gewähren Sie nur die Berechtigungen, die Ihre Funktionen benötigen, und verweisen Sie dann mit `defaultRoleUniversalIdentifier` auf den universellen Bezeichner dieser Rolle.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Dies ist die Standardrolle, die von den Logikfunktionen Ihrer Anwendung verwendet wird.
* Anwendungen können Rollen definieren, um das Least-Privilege-Prinzip einzuhalten. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Hello-World-Beispiel
@@ -217,12 +217,12 @@ El twenty-sdk proporciona bloques de construcción tipados y funciones auxiliare
El SDK proporciona cuatro funciones auxiliares con validación incorporada para definir las entidades de tu aplicación:
| Función | Propósito |
| ------------------ | ---------------------------------------------- |
| `defineApplication()` | Configura los metadatos de la aplicación |
| `defineObject()` | Define objetos personalizados con campos |
| `defineFunction()` | Define funciones de lógica con controladores |
| `defineRole()` | Configura permisos de roles y acceso a objetos |
| Función | Propósito |
| --------------------- | ---------------------------------------------- |
| `defineApplication()` | Configura los metadatos de la aplicación |
| `defineObject()` | Define objetos personalizados con campos |
| `defineFunction()` | Define funciones de lógica con controladores |
| `defineRole()` | Configura permisos de roles y acceso a objetos |
Estas funciones validan tu configuración en tiempo de ejecución y proporcionan un mejor autocompletado en el IDE y seguridad de tipos.
@@ -319,7 +319,7 @@ Cada aplicación tiene un único archivo `application.config.ts` que describe:
* **Cómo se ejecutan sus funciones**: qué rol usan para permisos.
* **Variables (opcionales)**: pares clavevalor expuestos a tus funciones como variables de entorno.
Usa `defineApplication()` para definir la configuración de tu aplicación:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Notas:
* Los campos `universalIdentifier` son ID deterministas bajo tu control; genéralos una vez y mantenlos estables entre sincronizaciones.
* Las `applicationVariables` se convierten en variables de entorno para tus funciones (por ejemplo, `DEFAULT_RECIPIENT_NAME` está disponible como `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` debe coincidir con el rol que defines en tu archivo `*.role.ts` (ver abajo).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Roles y permisos
Las aplicaciones pueden definir roles que encapsulan permisos sobre los objetos y acciones de tu espacio de trabajo. El campo `defaultRoleUniversalIdentifier` en `application.config.ts` designa el rol predeterminado que usan las funciones de lógica de tu aplicación.
Las aplicaciones pueden definir roles que encapsulan permisos sobre los objetos y acciones de tu espacio de trabajo. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* La clave de API en tiempo de ejecución inyectada como `TWENTY_API_KEY` se deriva de este rol de función predeterminado.
* El cliente tipado estará restringido a los permisos otorgados a ese rol.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
El `universalIdentifier` de este rol se referencia luego en `application.config.ts` como `defaultRoleUniversalIdentifier`. En otras palabras:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. En otras palabras:
* **\*.role.ts** define lo que puede hacer el rol de función predeterminado.
* **application.config.ts** apunta a ese rol para que tus funciones hereden sus permisos.
@@ -606,8 +606,8 @@ Cuando tu función se ejecuta en Twenty, la plataforma inyecta credenciales como
Notas:
* No necesitas pasar la URL ni la clave de API al cliente generado. Lee `TWENTY_API_URL` y `TWENTY_API_KEY` de process.env en tiempo de ejecución.
* Los permisos de la clave de API están determinados por el rol referenciado en tu `application.config.ts` mediante `defaultRoleUniversalIdentifier`. Este es el rol predeterminado que usan las funciones de lógica de tu aplicación.
* Las aplicaciones pueden definir roles para seguir el principio de mínimo privilegio. Concede solo los permisos que necesitan tus funciones y después apunta `defaultRoleUniversalIdentifier` al identificador universal de ese rol.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Este es el rol predeterminado que usan las funciones de lógica de tu aplicación.
* Las aplicaciones pueden definir roles para seguir el principio de mínimo privilegio. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Ejemplo Hello World
@@ -217,12 +217,12 @@ Il pacchetto twenty-sdk fornisce blocchi tipizzati e funzioni helper da usare ne
L'SDK fornisce quattro funzioni helper con convalida integrata per definire le entità della tua app:
| Funzione | Scopo |
| ------------------ | ------------------------------------------------------- |
| `defineApplication()` | Configura i metadati dell'applicazione |
| `defineObject()` | Definisci oggetti personalizzati con campi |
| `defineFunction()` | Definisci funzioni logiche con handler |
| `defineRole()` | Configura i permessi dei ruoli e l'accesso agli oggetti |
| Funzione | Scopo |
| --------------------- | ------------------------------------------------------- |
| `defineApplication()` | Configura i metadati dell'applicazione |
| `defineObject()` | Definisci oggetti personalizzati con campi |
| `defineFunction()` | Definisci funzioni logiche con handler |
| `defineRole()` | Configura i permessi dei ruoli e l'accesso agli oggetti |
Queste funzioni convalidano la configurazione a runtime e offrono un migliore completamento automatico nell'IDE e una maggiore sicurezza dei tipi.
@@ -319,7 +319,7 @@ Ogni app ha un singolo file `application.config.ts` che descrive:
* **Come vengono eseguite le sue funzioni**: quale ruolo usano per i permessi.
* **Variabili (opzionali)**: coppie chiavevalore esposte alle funzioni come variabili d'ambiente.
Usa `defineApplication()` per definire la configurazione della tua applicazione:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Note:
* I campi `universalIdentifier` sono ID deterministici sotto il tuo controllo; generali una volta e mantienili stabili tra le sincronizzazioni.
* `applicationVariables` diventano variabili d'ambiente per le tue funzioni (ad esempio, `DEFAULT_RECIPIENT_NAME` è disponibile come `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` deve corrispondere al ruolo che definisci nel tuo file `*.role.ts` (vedi sotto).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Ruoli e permessi
Le applicazioni possono definire ruoli che incapsulano i permessi sugli oggetti e sulle azioni del tuo spazio di lavoro. Il campo `defaultRoleUniversalIdentifier` in `application.config.ts` designa il ruolo predefinito utilizzato dalle funzioni logiche della tua app.
Le applicazioni possono definire ruoli che incapsulano i permessi sugli oggetti e sulle azioni del tuo spazio di lavoro. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* La chiave API di runtime iniettata come `TWENTY_API_KEY` è derivata da questo ruolo funzione predefinito.
* Il client tipizzato sarà limitato ai permessi concessi a quel ruolo.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
L'`universalIdentifier` di questo ruolo viene quindi referenziato in `application.config.ts` come `defaultRoleUniversalIdentifier`. In altre parole:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. In altre parole:
* **\*.role.ts** definisce ciò che il ruolo funzione predefinito può fare.
* **application.config.ts** punta a quel ruolo in modo che le tue funzioni ne ereditino i permessi.
@@ -606,8 +606,8 @@ Quando la tua funzione viene eseguita su Twenty, la piattaforma inietta le crede
Note:
* Non è necessario passare URL o chiave API al client generato. Legge `TWENTY_API_URL` e `TWENTY_API_KEY` da process.env in fase di esecuzione.
* I permessi della chiave API sono determinati dal ruolo referenziato in `application.config.ts` tramite `defaultRoleUniversalIdentifier`. Questo è il ruolo predefinito utilizzato dalle funzioni logiche della tua applicazione.
* Le applicazioni possono definire ruoli per seguire il principio del privilegio minimo. Concedi solo i permessi necessari alle tue funzioni, quindi punta `defaultRoleUniversalIdentifier` all'identificatore universale di quel ruolo.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Questo è il ruolo predefinito utilizzato dalle funzioni logiche della tua applicazione.
* Le applicazioni possono definire ruoli per seguire il principio del privilegio minimo. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Esempio Hello World
@@ -217,12 +217,12 @@ twenty-sdk는 앱 내부에서 사용하는 타입드 빌딩 블록과 헬퍼
SDK는 앱 엔티티를 정의할 때 사용할 수 있는, 내장 검증이 포함된 네 가지 헬퍼 함수를 제공합니다:
| 함수 | 목적 |
| ------------------ | ------------------- |
| `defineApplication()` | 애플리케이션 메타데이터 구성 |
| `defineObject()` | 필드가 있는 사용자 정의 객체 정의 |
| `defineFunction()` | 핸들러가 있는 로직 함수 정의 |
| `defineRole()` | 역할 권한과 객체 접근 구성 |
| 함수 | 목적 |
| --------------------- | ------------------- |
| `defineApplication()` | 애플리케이션 메타데이터 구성 |
| `defineObject()` | 필드가 있는 사용자 정의 객체 정의 |
| `defineFunction()` | 핸들러가 있는 로직 함수 정의 |
| `defineRole()` | 역할 권한과 객체 접근 구성 |
이 함수들은 런타임에 구성을 검증하고, 더 나은 IDE 자동 완성과 타입 안정성을 제공합니다.
@@ -319,7 +319,7 @@ export default defineObject({
* **함수가 실행되는 방식**: 권한을 위해 사용하는 역할.
* **(선택 사항) 변수**: 함수에 환경 변수로 노출되는 키–값 쌍.
`defineApplication()`을 사용해 애플리케이션 구성을 정의하세요:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ export default defineApplication({
* `universalIdentifier` 필드는 고유하고 결정적인 ID입니다. 한 번 생성한 후 동기화 전반에 걸쳐 안정적으로 유지하세요.
* `applicationVariables`는 함수의 환경 변수가 됩니다(예: `DEFAULT_RECIPIENT_NAME`는 `process.env.DEFAULT_RECIPIENT_NAME`로 사용 가능).
* `defaultRoleUniversalIdentifier`는 `*.role.ts` 파일에서 정의한 역할과 일치해야 합니다(아래 참조).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### 역할 및 권한
애플리케이션은 워크스페이스의 객체와 작업에 대한 권한을 캡슐화하는 역할을 정의할 수 있습니다. `application.config.ts`의 `defaultRoleUniversalIdentifier` 필드는 앱의 로직 함수가 사용하는 기본 역할을 지정합니다.
애플리케이션은 워크스페이스의 객체와 작업에 대한 권한을 캡슐화하는 역할을 정의할 수 있습니다. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* `TWENTY_API_KEY`로 주입되는 런타임 API 키는 이 기본 함수 역할에서 파생됩니다.
* 타입드 클라이언트는 해당 역할에 부여된 권한으로 제한됩니다.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
이 역할의 `universalIdentifier` `application.config.ts`에서 `defaultRoleUniversalIdentifier`로 참조됩니다. 다시 말해:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. 다시 말해:
* **\*.role.ts**는 기본 함수 역할이 수행할 수 있는 작업을 정의합니다.
* **application.config.ts**는 해당 역할을 가리키므로, 함수는 그 권한을 상속받습니다.
@@ -606,8 +606,8 @@ const { me } = await client.query({ me: { id: true, displayName: true } });
노트:
* 생성된 클라이언트에 URL이나 API 키를 전달할 필요가 없습니다. 런타임에 process.env에서 `TWENTY_API_URL`과 `TWENTY_API_KEY`를 읽습니다.
* API 키의 권한은 `application.config.ts`에서 `defaultRoleUniversalIdentifier`를 통해 참조된 역할에 의해 결정됩니다. 이는 애플리케이션의 로직 함수에서 사용하는 기본 역할입니다.
* 애플리케이션은 최소 권한 원칙을 따르도록 역할을 정의할 수 있습니다. 함수에 필요한 권한만 부여하고, `defaultRoleUniversalIdentifier`를 해당 역할의 universal identifier로 지정하세요.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. 이는 애플리케이션의 로직 함수에서 사용하는 기본 역할입니다.
* 애플리케이션은 최소 권한 원칙을 따르도록 역할을 정의할 수 있습니다. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Hello World 예제
@@ -217,12 +217,12 @@ O twenty-sdk fornece blocos de construção tipados e funções utilitárias que
O SDK fornece quatro funções utilitárias com validação integrada para definir as entidades do seu aplicativo:
| Função | Finalidade |
| ------------------ | ------------------------------------------------- |
| `defineApplication()` | Configura os metadados do aplicativo |
| `defineObject()` | Define objetos personalizados com campos |
| `defineFunction()` | Defina funções de lógica com handlers |
| `defineRole()` | Configura permissões de papéis e acesso a objetos |
| Função | Finalidade |
| --------------------- | ------------------------------------------------- |
| `defineApplication()` | Configura os metadados do aplicativo |
| `defineObject()` | Define objetos personalizados com campos |
| `defineFunction()` | Defina funções de lógica com handlers |
| `defineRole()` | Configura permissões de papéis e acesso a objetos |
Essas funções validam sua configuração em tempo de execução e oferecem melhor autocompletar na IDE e segurança de tipos.
@@ -319,7 +319,7 @@ Todo aplicativo tem um único arquivo `application.config.ts` que descreve:
* **Como suas funções são executadas**: qual papel usam para permissões.
* **Variáveis (opcional)**: pares chavevalor expostos às suas funções como variáveis de ambiente.
Use `defineApplication()` para definir a configuração do seu aplicativo:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Notas:
* `universalIdentifier` são IDs determinísticos que você controla; gere-os uma vez e mantenha-os estáveis entre sincronizações.
* `applicationVariables` tornam-se variáveis de ambiente para suas funções (por exemplo, `DEFAULT_RECIPIENT_NAME` fica disponível como `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` deve corresponder ao papel que você define no seu arquivo `*.role.ts` (veja abaixo).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Papéis e permissões
Os aplicativos podem definir papéis que encapsulam permissões sobre os objetos e ações do seu espaço de trabalho. O campo `defaultRoleUniversalIdentifier` em `application.config.ts` designa o papel padrão usado pelas funções de lógica do seu app.
Os aplicativos podem definir papéis que encapsulam permissões sobre os objetos e ações do seu espaço de trabalho. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* A chave de API em tempo de execução, injetada como `TWENTY_API_KEY`, é derivada desse papel padrão de função.
* O cliente tipado ficará restrito às permissões concedidas a esse papel.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
O `universalIdentifier` desse papel é então referenciado em `application.config.ts` como `defaultRoleUniversalIdentifier`. Em outras palavras:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Em outras palavras:
* **\*.role.ts** define o que o papel de função padrão pode fazer.
* **application.config.ts** aponta para esse papel para que suas funções herdem suas permissões.
@@ -606,8 +606,8 @@ Quando sua função é executada no Twenty, a plataforma injeta credenciais como
Notas:
* Você não precisa passar a URL ou a chave de API para o cliente gerado. Ele lê `TWENTY_API_URL` e `TWENTY_API_KEY` de process.env em tempo de execução.
* As permissões da chave de API são determinadas pelo papel referenciado no seu `application.config.ts` via `defaultRoleUniversalIdentifier`. Este é o papel padrão usado pelas funções de lógica do seu app.
* Os aplicativos podem definir papéis para seguir o princípio do menor privilégio. Conceda apenas as permissões de que suas funções precisam e, em seguida, aponte `defaultRoleUniversalIdentifier` para o identificador universal desse papel.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Este é o papel padrão usado pelas funções de lógica do seu app.
* Os aplicativos podem definir papéis para seguir o princípio do menor privilégio. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Exemplo Hello World
@@ -217,12 +217,12 @@ Biblioteca twenty-sdk oferă blocuri de bază tipizate și funcții ajutătoare
SDK-ul oferă patru funcții ajutătoare cu validare încorporată pentru definirea entităților aplicației:
| Funcție | Scop |
| ------------------ | -------------------------------------------------------- |
| `defineApplication()` | Configurați metadatele aplicației |
| `defineObject()` | Definiți obiecte personalizate cu câmpuri |
| `defineFunction()` | Definiți funcții de logică cu handleri |
| `defineRole()` | Configurați permisiunile rolurilor și accesul la obiecte |
| Funcție | Scop |
| --------------------- | -------------------------------------------------------- |
| `defineApplication()` | Configurați metadatele aplicației |
| `defineObject()` | Definiți obiecte personalizate cu câmpuri |
| `defineFunction()` | Definiți funcții de logică cu handleri |
| `defineRole()` | Configurați permisiunile rolurilor și accesul la obiecte |
Aceste funcții validează configurația în timpul execuției și oferă o completare automată mai bună în IDE și siguranța tipurilor.
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Notițe:
* Câmpurile `universalIdentifier` sunt ID-uri deterministe pe care le dețineți; generați-le o singură dată și păstrați-le stabile între sincronizări.
* `applicationVariables` devin variabile de mediu pentru funcțiile dvs. (de exemplu, `DEFAULT_RECIPIENT_NAME` este disponibil ca `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` trebuie să corespundă rolului pe care îl definiți în fișierul `*.role.ts` (vedeți mai jos).
* `roleUniversalIdentifier` trebuie să corespundă rolului pe care îl definiți în fișierul `*.role.ts` (vedeți mai jos).
#### Roluri și permisiuni
Aplicațiile pot defini roluri care încapsulează permisiuni asupra obiectelor și acțiunilor din spațiul dvs. de lucru. Câmpul `defaultRoleUniversalIdentifier` din `application.config.ts` desemnează rolul implicit folosit de funcțiile de logică ale aplicației.
Aplicațiile pot defini roluri care încapsulează permisiuni asupra obiectelor și acțiunilor din spațiul dvs. de lucru. Câmpul `roleUniversalIdentifier` din `application.config.ts` desemnează rolul implicit folosit de funcțiile de logică ale aplicației.
* Cheia API de runtime injectată ca `TWENTY_API_KEY` este derivată din acest rol implicit pentru funcții.
* Clientul tipizat va fi restricționat la permisiunile acordate acelui rol.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
`universalIdentifier` al acestui rol este apoi referențiat în `application.config.ts` ca `defaultRoleUniversalIdentifier`. Cu alte cuvinte:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Cu alte cuvinte:
* **\*.role.ts** definește ce poate face rolul implicit pentru funcții.
* **application.config.ts** indică acel rol, astfel încât funcțiile moștenesc permisiunile lui.
@@ -606,8 +606,8 @@ Când funcția rulează pe Twenty, platforma injectează acreditări ca variabil
Notițe:
* Nu trebuie să transmiteți URL-ul sau cheia API către clientul generat. Acesta citește `TWENTY_API_URL` și `TWENTY_API_KEY` din process.env la runtime.
* Permisiunile cheii API sunt determinate de rolul referențiat în `application.config.ts` prin `defaultRoleUniversalIdentifier`. Acesta este rolul implicit folosit de funcțiile de logică ale aplicației.
* Aplicațiile pot defini roluri pentru a urma principiul celui mai mic privilegiu. Acordați doar permisiunile de care au nevoie funcțiile, apoi setați `defaultRoleUniversalIdentifier` la identificatorul universal al acelui rol.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Acesta este rolul implicit folosit de funcțiile de logică ale aplicației.
* Aplicațiile pot defini roluri pentru a urma principiul celui mai mic privilegiu. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Exemplu Hello World
@@ -217,12 +217,12 @@ yarn auth:status
SDK предоставляет четыре вспомогательных функции с встроенной валидацией для определения сущностей вашего приложения:
| Функция | Назначение |
| ------------------ | ---------------------------------------------- |
| `defineApplication()` | Настраивает метаданные приложения |
| `defineObject()` | Определяет пользовательские объекты с полями |
| `defineFunction()` | Определение логических функций с обработчиками |
| `defineRole()` | Настраивает права роли и доступ к объектам |
| Функция | Назначение |
| --------------------- | ---------------------------------------------- |
| `defineApplication()` | Настраивает метаданные приложения |
| `defineObject()` | Определяет пользовательские объекты с полями |
| `defineFunction()` | Определение логических функций с обработчиками |
| `defineRole()` | Настраивает права роли и доступ к объектам |
Эти функции проверяют вашу конфигурацию во время выполнения и обеспечивают лучшую автодополняемость в IDE и безопасность типов.
@@ -319,7 +319,7 @@ export default defineObject({
* **Как запускаются его функции**: какую роль они используют для прав доступа.
* **(Необязательно) переменные**: пары ключ-значение, предоставляемые вашим функциям как переменные окружения.
Используйте `defineApplication()` для определения конфигурации вашего приложения:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ export default defineApplication({
* `universalIdentifier` — это детерминированные идентификаторы, которыми вы управляете; сгенерируйте их один раз и сохраняйте стабильными между синхронизациями.
* `applicationVariables` становятся переменными окружения для ваших функций (например, `DEFAULT_RECIPIENT_NAME` доступна как `process.env.DEFAULT_RECIPIENT_NAME`).
* `defaultRoleUniversalIdentifier` должен соответствовать роли, которую вы определяете в файле `*.role.ts` (см. ниже).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Роли и разрешения
Приложения могут определять роли, инкапсулирующие права на объекты и действия в вашем рабочем пространстве. Поле `defaultRoleUniversalIdentifier` в `application.config.ts` обозначает роль по умолчанию, используемую логическими функциями вашего приложения.
Приложения могут определять роли, инкапсулирующие права на объекты и действия в вашем рабочем пространстве. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* Ключ API во время выполнения, подставляемый как `TWENTY_API_KEY`, получается из этой роли функции по умолчанию.
* Типизированный клиент будет ограничен правами, предоставленными этой ролью.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
`universalIdentifier` этой роли затем указывается в `application.config.ts` как `defaultRoleUniversalIdentifier`. Иными словами:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Иными словами:
* **\*.role.ts** определяет, что может делать роль функции по умолчанию.
* **application.config.ts** указывает на эту роль, чтобы ваши функции наследовали её права.
@@ -606,8 +606,8 @@ const { me } = await client.query({ me: { id: true, displayName: true } });
Заметки:
* Вам не нужно передавать URL или ключ API сгенерированному клиенту. Он читает `TWENTY_API_URL` и `TWENTY_API_KEY` из process.env во время выполнения.
* Права ключа API определяются ролью, на которую ссылается ваш `application.config.ts` через `defaultRoleUniversalIdentifier`. Это роль по умолчанию, используемая логическими функциями вашего приложения.
* Приложения могут определять роли, чтобы следовать принципу наименьших привилегий. Выдавайте только те права, которые нужны вашим функциям, затем укажите в `defaultRoleUniversalIdentifier` универсальный идентификатор этой роли.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Это роль по умолчанию, используемая логическими функциями вашего приложения.
* Приложения могут определять роли, чтобы следовать принципу наименьших привилегий. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Пример Hello World
@@ -217,12 +217,12 @@ twenty-sdk, uygulamanız içinde kullandığınız türlendirilmiş yapı taşla
SDK, uygulama varlıklarınızı tanımlamak için yerleşik doğrulamaya sahip dört yardımcı fonksiyon sunar:
| Fonksiyon | Amaç |
| ------------------ | ---------------------------------------------- |
| `defineApplication()` | Uygulama meta verilerini yapılandırın |
| `defineObject()` | Alanlara sahip özel nesneler tanımlayın |
| `defineFunction()` | İşleyicilerle mantık fonksiyonları tanımlayın |
| `defineRole()` | Rol izinlerini ve nesne erişimini yapılandırın |
| Fonksiyon | Amaç |
| --------------------- | ---------------------------------------------- |
| `defineApplication()` | Uygulama meta verilerini yapılandırın |
| `defineObject()` | Alanlara sahip özel nesneler tanımlayın |
| `defineFunction()` | İşleyicilerle mantık fonksiyonları tanımlayın |
| `defineRole()` | Rol izinlerini ve nesne erişimini yapılandırın |
Bu fonksiyonlar, yapılandırmanızı çalışma anında doğrular ve daha iyi IDE otomatik tamamlama ve tür güvenliği sağlar.
@@ -319,7 +319,7 @@ Her uygulamanın aşağıdakileri açıklayan tek bir `application.config.ts` do
* **Fonksiyonlarının nasıl çalıştığı**: izinler için hangi rolü kullandıkları.
* **(İsteğe bağlı) değişkenler**: fonksiyonlarınıza ortam değişkenleri olarak sunulan anahtardeğer çiftleri.
Uygulama yapılandırmanızı tanımlamak için `defineApplication()` kullanın:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -339,7 +339,7 @@ export default defineApplication({
isSecret: false,
},
},
defaultRoleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
roleUniversalIdentifier: DEFAULT_ROLE_UNIVERSAL_IDENTIFIER,
});
```
@@ -347,11 +347,11 @@ Notlar:
* `universalIdentifier` alanları size ait belirleyici kimliklerdir; bunları bir kez oluşturun ve eşitlemeler boyunca kararlı tutun.
* `applicationVariables`, fonksiyonlarınız için ortam değişkenlerine dönüşür (örneğin, `DEFAULT_RECIPIENT_NAME` değeri `process.env.DEFAULT_RECIPIENT_NAME` olarak kullanılabilir).
* `defaultRoleUniversalIdentifier`, `*.role.ts` dosyanızda tanımladığınız rolle eşleşmelidir (aşağıya bakın).
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### Roller ve izinler
Uygulamalar, çalışma alanınızdaki nesneler ve eylemler üzerindeki izinleri kapsülleyen roller tanımlayabilir. `application.config.ts` içindeki `defaultRoleUniversalIdentifier` alanı, uygulamanızın mantık fonksiyonları tarafından kullanılan varsayılan rolü belirtir.
Uygulamalar, çalışma alanınızdaki nesneler ve eylemler üzerindeki izinleri kapsülleyen roller tanımlayabilir. The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* `TWENTY_API_KEY` olarak enjekte edilen çalışma zamanı API anahtarı bu varsayılan fonksiyon rolünden türetilir.
* Türlendirilmiş istemci, o role tanınan izinlerle sınırlandırılır.
@@ -401,7 +401,7 @@ export default defineRole({
});
```
Bu rolün `universalIdentifier` değeri, `application.config.ts` içinde `defaultRoleUniversalIdentifier` olarak referans verilir. Başka bir deyişle:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. Başka bir deyişle:
* **\*.role.ts**, varsayılan fonksiyon rolünün neler yapabileceğini tanımlar.
* **application.config.ts** bu role işaret eder, böylece fonksiyonlarınız onun izinlerini devralır.
@@ -606,8 +606,8 @@ Fonksiyonunuz Twenty üzerinde çalıştığında, platform kodunuz yürütülme
Notlar:
* Oluşturulan istemciye URL veya API anahtarı geçirmeniz gerekmez. Çalışma zamanında `TWENTY_API_URL` ve `TWENTY_API_KEY` değerlerini process.env üzerinden okur.
* API anahtarının izinleri, `application.config.ts` içinde `defaultRoleUniversalIdentifier` aracılığıyla referans verilen role göre belirlenir. Bu, uygulamanızın mantık fonksiyonları tarafından kullanılan varsayılan roldür.
* Uygulamalar, en az ayrıcalık ilkesini izlemek için roller tanımlayabilir. Yalnızca fonksiyonlarınızın ihtiyaç duyduğu izinleri verin ve ardından `defaultRoleUniversalIdentifier` değerini o rolün evrensel tanımlayıcısına yönlendirin.
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. Bu, uygulamanızın mantık fonksiyonları tarafından kullanılan varsayılan roldür.
* Uygulamalar, en az ayrıcalık ilkesini izlemek için roller tanımlayabilir. Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Hello World örneği
@@ -217,12 +217,12 @@ twenty-sdk 提供你在应用中使用的类型化构件和辅助函数。 以
该 SDK 提供四个带内置校验的辅助函数,用于定义你的应用实体:
| 函数 | 目的 |
| ------------------ | ------------ |
| `defineApplication()` | 配置应用元数据 |
| `defineObject()` | 定义带字段的自定义对象 |
| `defineFunction()` | 定义带处理程序的逻辑函数 |
| `defineRole()` | 配置角色权限和对象访问 |
| 函数 | 目的 |
| --------------------- | ------------ |
| `defineApplication()` | 配置应用元数据 |
| `defineObject()` | 定义带字段的自定义对象 |
| `defineFunction()` | 定义带处理程序的逻辑函数 |
| `defineRole()` | 配置角色权限和对象访问 |
这些函数会在运行时校验你的配置,并提供更好的 IDE 自动补全和类型安全。
@@ -319,7 +319,7 @@ export default defineObject({
* **函数如何运行**:它们用于权限的角色。
* **(可选)变量**:以环境变量形式提供给函数的键值对。
使用 `defineApplication()` 定义你的应用配置:
Use `defineApplication()` to define your application configuration:
```typescript
// src/app/application.config.ts
@@ -347,11 +347,11 @@ export default defineApplication({
* `universalIdentifier` 字段是你拥有的确定性 ID;生成一次并在多次同步中保持稳定。
* `applicationVariables` 会变成函数可用的环境变量(例如,`DEFAULT_RECIPIENT_NAME` 可作为 `process.env.DEFAULT_RECIPIENT_NAME` 使用)。
* `roleUniversalIdentifier` 必须与在 `*.role.ts` 文件中定义的角色一致(见下文)。
* `roleUniversalIdentifier` must match the role you define in your `*.role.ts` file (see below).
#### 角色和权限
应用可以定义角色,以封装对工作空间对象与操作的权限。 `application.config.ts` 中的 `roleUniversalIdentifier` 字段指定你的应用逻辑函数所使用的默认角色。
应用可以定义角色,以封装对工作空间对象与操作的权限。 The field `roleUniversalIdentifier` in `application.config.ts` designates the default role used by your app's logic functions.
* 作为 `TWENTY_API_KEY` 注入的运行时 API 密钥源自该默认函数角色。
* 类型化客户端将受限于该角色授予的权限。
@@ -401,7 +401,7 @@ export default defineRole({
});
```
随后,该角色的 `universalIdentifier` 会在 `application.config.ts` 中以 `roleUniversalIdentifier` 引用。 换句话说:
The `universalIdentifier` of this role is then referenced in `application.config.ts` as `roleUniversalIdentifier`. 换句话说:
* **\*.role.ts** 定义默认函数角色可以执行的操作。
* **application.config.ts** 指向该角色,使你的函数继承其权限。
@@ -606,8 +606,8 @@ const { me } = await client.query({ me: { id: true, displayName: true } });
备注:
* 你无需向生成的客户端传递 URL 或 API 密钥。 它会在运行时从 process.env 读取 `TWENTY_API_URL` 和 `TWENTY_API_KEY`。
* API 密钥的权限由 `application.config.ts` 中通过 `roleUniversalIdentifier` 引用的角色决定。 这是你的应用逻辑函数使用的默认角色。
* 应用可以定义角色以遵循最小权限原则。 仅授予函数所需的权限,然后将 `roleUniversalIdentifier` 指向该角色的通用标识符。
* The API key's permissions are determined by the role referenced in your `application.config.ts` via `roleUniversalIdentifier`. 这是你的应用逻辑函数使用的默认角色。
* 应用可以定义角色以遵循最小权限原则。 Grant only the permissions your functions need, then point `roleUniversalIdentifier` to that role's universal identifier.
### Hello World 示例