i18n - docs translations (#16779)
Created by Github action --------- Co-authored-by: github-actions <github-actions@twenty.com>
This commit is contained in:
committed by
GitHub
parent
1bc344c6fa
commit
e3757f300a
+1
-1
@@ -21,7 +21,7 @@ class Resolver {
|
||||
constructor(@Inject(MESSAGE_QUEUES.custom) private queue: MessageQueueService) {}
|
||||
|
||||
async onSomeAction() {
|
||||
//iş mantığı
|
||||
//business logic
|
||||
await this.queue.add(someData);
|
||||
}
|
||||
}
|
||||
|
||||
+7
-7
@@ -19,7 +19,7 @@ Durumunuzu depolamak için ihtiyaç duyduğunuz kadar atom oluşturmak iyi bir u
|
||||
```tsx
|
||||
export const myAtomState = atom({
|
||||
key: 'myAtomState',
|
||||
default: 'default değer',
|
||||
default: 'default value',
|
||||
});
|
||||
|
||||
export const MyComponent = () => {
|
||||
@@ -186,14 +186,14 @@ const [email, setEmail] = useState('');
|
||||
Olay işleyici adları `handle` ile başlamalı, bileşen props'larında olayları adlandırmak için `on` bir ön ek olarak kullanılmaktadır.
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü
|
||||
// ❌ Bad
|
||||
const onEmailChange = (val: string) => {
|
||||
// ...
|
||||
};
|
||||
```
|
||||
|
||||
```tsx
|
||||
// ✅ İyi
|
||||
// ✅ Good
|
||||
const handleEmailChange = (val: string) => {
|
||||
// ...
|
||||
};
|
||||
@@ -239,7 +239,7 @@ Bunun en yaygın örneği simge bileşenleridir:
|
||||
```tsx
|
||||
const SomeParentComponent = () => <MyComponent Icon={MyIcon} />;
|
||||
|
||||
// MyComponent'te
|
||||
// In MyComponent
|
||||
const MyComponent = ({ MyIcon }: { MyIcon: IconComponent }) => {
|
||||
const theme = useTheme();
|
||||
|
||||
@@ -284,7 +284,7 @@ Aşırı prop taşıma kullanıyorsanız, [durum yönetimi en iyi uygulamaların
|
||||
**Kullanım**
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü, tüm göreli yolu belirtir
|
||||
// ❌ Bad, specifies the entire relative path
|
||||
import {
|
||||
CatalogDecorator
|
||||
} from '../../../../../testing/decorators/CatalogDecorator';
|
||||
@@ -309,10 +309,10 @@ const validationSchema = z
|
||||
exist: z.boolean(),
|
||||
email: z
|
||||
.string()
|
||||
.email('Email geçerli bir e-posta olmalıdır'),
|
||||
.email('Email must be a valid email'),
|
||||
password: z
|
||||
.string()
|
||||
.regex(PASSWORD_REGEX, 'Şifre en az 8 karakter içermelidir'),
|
||||
.regex(PASSWORD_REGEX, 'Password must contain at least 8 characters'),
|
||||
})
|
||||
.required();
|
||||
|
||||
|
||||
+4
-4
@@ -67,7 +67,7 @@ const PageListeningEnter = () => {
|
||||
ExampleHotkeyScopes.ExampleEnterPage,
|
||||
);
|
||||
|
||||
return <div>Enter Dinleyen Sayfam</div>;
|
||||
return <div>My page that listens for Enter</div>;
|
||||
};
|
||||
```
|
||||
|
||||
@@ -101,8 +101,8 @@ const ExamplePageWithModal = () => {
|
||||
};
|
||||
|
||||
return <div>
|
||||
<h1>Modal İçeren Sayfam</h1>
|
||||
<button onClick={handleOpenModalClick}>Modali Aç</button>
|
||||
<h1>My page with a modal</h1>
|
||||
<button onClick={handleOpenModalClick}>Open modal</button>
|
||||
{showModal && <MyModalComponent onClose={handleModalClose} />}
|
||||
</div>;
|
||||
};
|
||||
@@ -123,7 +123,7 @@ const MyDropdownComponent = ({ onClose }: { onClose: () => void }) => {
|
||||
ExampleHotkeyScopes.ExampleModal,
|
||||
);
|
||||
|
||||
return <div>Modal bileşenim</div>;
|
||||
return <div>My modal component</div>;
|
||||
};
|
||||
```
|
||||
|
||||
|
||||
+17
-15
@@ -21,16 +21,16 @@ Her zaman TSX fonksiyonel bileşenlerini kullanın.
|
||||
Do not use default `import` with `const`, because it's harder to read and harder to import with code completion.
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü, okumak zor, kod tamamlama ile ithal etmek zor
|
||||
// ❌ Bad, harder to read, harder to import with code completion
|
||||
const MyComponent = () => {
|
||||
return <div>Merhaba Dünya</div>;
|
||||
return <div>Hello World</div>;
|
||||
};
|
||||
|
||||
export default MyComponent;
|
||||
|
||||
// ✅ İyi, okumak kolay, kod tamamlama ile ithal etmek kolay
|
||||
// ✅ Good, easy to read, easy to import with code completion
|
||||
export function MyComponent() {
|
||||
return <div>Merhaba Dünya</div>;
|
||||
return <div>Hello World</div>;
|
||||
};
|
||||
```
|
||||
|
||||
@@ -41,23 +41,25 @@ Create the type of the props and call it `(ComponentName)Props` if there's no ne
|
||||
Use props destructuring.
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü, tür yok
|
||||
export const MyComponent = (props) => <div>Merhaba {props.name}</div>;
|
||||
// ❌ Bad, no type
|
||||
export const MyComponent = (props) => <div>Hello {props.name}</div>;
|
||||
|
||||
// ✅ İyi, tür
|
||||
// ✅ Good, type
|
||||
type MyComponentProps = {
|
||||
name: string;
|
||||
};
|
||||
|
||||
export const MyComponent = ({ name }: MyComponentProps) => <div>Merhaba {name}</div>;
|
||||
export const MyComponent = ({ name }: MyComponentProps) => <div>Hello {name}</div>;
|
||||
```
|
||||
|
||||
#### Refrain from using `React.FC` or `React.FunctionComponent` to define prop types
|
||||
|
||||
```tsx
|
||||
/* ❌ - Kötü, bileşen tür notlarını `FC` ile tanımlıyor
|
||||
* - `React.FC` ile, bileşen prop türünde tanımlanmamış olsa bile bir `children` prop kabul eder
|
||||
* Bu her zaman istenmeyen sonuçlara neden olabilir, özellikle bileşen çocukları render etmeyi düşünmüyorsa.
|
||||
/* ❌ - Bad, defines the component type annotations with `FC`
|
||||
* - With `React.FC`, the component implicitly accepts a `children` prop
|
||||
* even if it's not defined in the prop type. This might not always be
|
||||
* desirable, especially if the component doesn't intend to render
|
||||
* children.
|
||||
*/
|
||||
const EmailField: React.FC<{
|
||||
value: string;
|
||||
@@ -84,7 +86,7 @@ const EmailField = ({ value }: EmailFieldProps) => (
|
||||
JSX elemanlarında tek değişkenli prop yayılımını, örneğin `{...props}` kullanmaktan kaçının. Bu uygulama, bileşenin hangi prop'ları aldığını belirsizleştirdiği için okunması zor ve bakımı güç kodlara yol açar.
|
||||
|
||||
```tsx
|
||||
/* ❌ - Kötü, tek değişkenli bir prop'un alttaki bileşene yayılmasını sağlar
|
||||
/* ❌ - Bad, spreads a single variable prop into the underlying component
|
||||
*/
|
||||
const MyComponent = (props: OwnProps) => {
|
||||
return <OtherComponent {...props} />;
|
||||
@@ -135,12 +137,12 @@ onClick?.();
|
||||
Always use `type` instead of `interface`, because they almost always overlap, and `type` is more flexible.
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü
|
||||
// ❌ Bad
|
||||
interface MyInterface {
|
||||
name: string;
|
||||
}
|
||||
|
||||
// ✅ İyi
|
||||
// ✅ Good
|
||||
type MyType = {
|
||||
name: string;
|
||||
};
|
||||
@@ -153,7 +155,7 @@ type MyType = {
|
||||
TypeScript, enum'ların neden kaçınılması gereken bir seçenek olduğunu [burada](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#enums) açıklamaktadır.
|
||||
|
||||
```tsx
|
||||
// ❌ Kötü, bir enum kullanıyor
|
||||
// ❌ Bad, utilizes an enum
|
||||
enum Color {
|
||||
Red = "red",
|
||||
Green = "green",
|
||||
|
||||
Reference in New Issue
Block a user