> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kayanos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# دوال التحقق

> جميع دوال التحقق المسجلة، مع التواقيع والأمثلة لقواعد الحقول التي تعيد رسالة محلية عند فشل التحقق.

## متى تستخدم هذه الدوال؟

تعيد دوال التحقق true عند صحة القيمة ورسالة تحقق محلية عند عدم صحتها. في سياقات تحقق الحقول تُمرر القيمة الحالية تلقائياً عند حذف وسيط القيمة من الدالة.

## طريقة الكتابة

استخدم الدالة بصيغة `v.required($.field)`. لا تكون كل دالة متاحة في كل مكان: دوال التحقق ودوال النموذج ودوال قالب المستند لها عقود سياق مختلفة. لا تفترض أن اقتراح المحرر يعني أن الدالة مدعومة وقت التشغيل.

## مرجع الدوال الكامل

### `v`

تعيد `true` عند تحقق الشرط أو قيمة خطأ محلية عند فشله.

**التوقيع:** `v(condition, error)`

**مثال:**

```txt theme={null}
v($.requesterName != null, "Requester is required")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.atLeastXYearsOld`

تتحقق من بلوغ عمر أدنى محسوب من تاريخ.

**التوقيع:** `v.atLeastXYearsOld(value, years)`

**مثال:**

```txt theme={null}
v.atLeastXYearsOld($.birthDate, 18)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.contains`

تتحقق من احتواء النص على جزء مطلوب.

**التوقيع:** `v.contains(value, fragment)`

**مثال:**

```txt theme={null}
v.contains($.reference, "REQ-")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.datePattern`

تتحقق من أن القيمة تمثل تاريخاً صالحاً.

**التوقيع:** `v.datePattern(value)`

**مثال:**

```txt theme={null}
v.datePattern($.appointmentDate)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.endsWith`

تتحقق من انتهاء النص باللاحقة المطلوبة.

**التوقيع:** `v.endsWith(value, suffix)`

**مثال:**

```txt theme={null}
v.endsWith($.email, ".gov.sy")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.equal`

تتحقق من مساواة صارمة بالقيمة المتوقعة.

**التوقيع:** `v.equal(value, expected)`

**مثال:**

```txt theme={null}
v.equal($.status, "approved")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.greaterThan`

تتحقق من أن قيمة رقمية أكبر من حد معين.

**التوقيع:** `v.greaterThan(value, limit)`

**مثال:**

```txt theme={null}
v.greaterThan($.area, 0)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.greaterThanOrEqual`

تتحقق من أن قيمة رقمية لا تقل عن حد معين.

**التوقيع:** `v.greaterThanOrEqual(value, minimum)`

**مثال:**

```txt theme={null}
v.greaterThanOrEqual($.staffCount, 1)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.lessOrEqual`

تتحقق من أن قيمة رقمية لا تتجاوز حداً معيناً.

**التوقيع:** `v.lessOrEqual(value, maximum)`

**مثال:**

```txt theme={null}
v.lessOrEqual($.attachmentsCount, 10)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.lessThan`

تتحقق من أن قيمة رقمية أصغر من حد معين.

**التوقيع:** `v.lessThan(value, limit)`

**مثال:**

```txt theme={null}
v.lessThan($.requestedDays, 31)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.matchRegex`

تتحقق من مطابقة النص لتعبير نمطي.

**التوقيع:** `v.matchRegex(value, pattern)`

**مثال:**

```txt theme={null}
v.matchRegex($.reference, "^REQ-[0-9]+$")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.maxLength`

تتحقق من الحد الأقصى لطول نص أو قائمة.

**التوقيع:** `v.maxLength(value, maximum)`

**مثال:**

```txt theme={null}
v.maxLength("permit", 40)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.minLength`

تتحقق من الحد الأدنى لطول نص أو قائمة.

**التوقيع:** `v.minLength(value, minimum)`

**مثال:**

```txt theme={null}
v.minLength("permit", 3)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.notOneOf`

تتحقق من أن القيمة ليست واحدة من الخيارات المعطاة.

**التوقيع:** `v.notOneOf(value, options)`

**مثال:**

```txt theme={null}
v.notOneOf($.status, ["archived", "deleted"])
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.oneOf`

تتحقق من أن القيمة واحدة من الخيارات المعطاة.

**التوقيع:** `v.oneOf(value, options)`

**مثال:**

```txt theme={null}
v.oneOf($.priority, ["low", "normal", "high"])
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.onlyAlphabets`

تتحقق من احتواء القيمة على حروف ومسافات فقط.

**التوقيع:** `v.onlyAlphabets(value)`

**مثال:**

```txt theme={null}
v.onlyAlphabets($.applicantName)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.onlyAlphabetsOfLanguage`

تتحقق من احتواء القيمة على حروف اللغة المختارة ومسافات فقط.

**التوقيع:** `v.onlyAlphabetsOfLanguage(value, language)`

**مثال:**

```txt theme={null}
v.onlyAlphabetsOfLanguage($.arabicName, "ar")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.onlyDigits`

تتحقق من احتواء القيمة على أرقام ASCII فقط.

**التوقيع:** `v.onlyDigits(value)`

**مثال:**

```txt theme={null}
v.onlyDigits($.nationalNumber)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.phoneNumber`

تتحقق من رقم هاتف بصيغة دولية.

**التوقيع:** `v.phoneNumber(value)`

**مثال:**

```txt theme={null}
v.phoneNumber($.mobile)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.required`

تتحقق من وجود قيمة وأنها ليست فارغة أو مسافات فقط.

**التوقيع:** `v.required(value)`

**مثال:**

```txt theme={null}
v.required($.requesterName)
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.startsWith`

تتحقق من بدء النص بالبادئة المطلوبة.

**التوقيع:** `v.startsWith(value, prefix)`

**مثال:**

```txt theme={null}
v.startsWith($.reference, "REQ-")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

### `v.validEmail`

تتحقق من صحة عنوان بريد إلكتروني.

**التوقيع:** `v.validEmail(value)`

**مثال:**

```txt theme={null}
v.validEmail("citizen@example.org")
```

**ملاحظة:** استخدمها كاستدعاء دالة؛ لا تستخدمها كتحويل.

## قائمة تحقق قبل النشر

* ابدأ بقيمة معروفة وتحقق من النتيجة المتوقعة.
* تعامل صراحةً مع القيم الفارغة وnull والقوائم الفارغة.
* لا تضع أسراراً أو رموز وصول أو بيانات شخصية حساسة داخل تعبير.
* راجع [سياقات وتوافر التعبيرات](/ar/reference/expressions/contexts) قبل نسخ تعبير بين ميزتين.

![دوال التحقق في KayanOS](https://kayanos.app/docs-images/ar/reference/expressions-helpers-validations.png)
