@object-ui/i18n 17.6.0 → 17.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4320 -0
- package/README.md +192 -13
- package/dist/builtinAggregateLabels.d.ts +40 -0
- package/dist/builtinAggregateLabels.js +23 -0
- package/dist/currency.d.ts +27 -3
- package/dist/currency.js +28 -4
- package/dist/fallbackInterpolation.d.ts +79 -0
- package/dist/fallbackInterpolation.js +124 -0
- package/dist/i18n.d.ts +27 -1
- package/dist/i18n.js +99 -16
- package/dist/index.d.ts +7 -13
- package/dist/index.js +41 -17
- package/dist/locales/ar.d.ts +946 -113
- package/dist/locales/ar.js +1095 -161
- package/dist/locales/de.d.ts +618 -113
- package/dist/locales/de.js +715 -134
- package/dist/locales/en.d.ts +632 -127
- package/dist/locales/en.js +1044 -162
- package/dist/locales/es.d.ts +700 -113
- package/dist/locales/es.js +794 -130
- package/dist/locales/fr.d.ts +700 -113
- package/dist/locales/fr.js +795 -132
- package/dist/locales/index.d.ts +6990 -1169
- package/dist/locales/index.js +48 -9
- package/dist/locales/ja.d.ts +618 -113
- package/dist/locales/ja.js +708 -128
- package/dist/locales/ko.d.ts +618 -113
- package/dist/locales/ko.js +712 -132
- package/dist/locales/pt.d.ts +700 -113
- package/dist/locales/pt.js +794 -130
- package/dist/locales/registry.d.ts +102 -0
- package/dist/locales/registry.js +220 -0
- package/dist/locales/rtl.d.ts +24 -0
- package/dist/locales/rtl.js +26 -0
- package/dist/locales/ru.d.ts +782 -113
- package/dist/locales/ru.js +910 -152
- package/dist/locales/zh.d.ts +635 -130
- package/dist/locales/zh.js +725 -131
- package/dist/pickLocalized.d.ts +30 -0
- package/dist/pickLocalized.js +39 -0
- package/dist/provider.d.ts +101 -12
- package/dist/provider.js +335 -50
- package/dist/translateFn.d.ts +29 -0
- package/dist/translateFn.js +8 -0
- package/dist/useDisplayLocale.d.ts +11 -0
- package/dist/useDisplayLocale.js +11 -0
- package/dist/useObjectLabel.d.ts +40 -18
- package/dist/useObjectLabel.js +46 -14
- package/dist/useSafeTranslation.js +40 -42
- package/dist/utils/formatting.d.ts +16 -0
- package/dist/utils/formatting.js +23 -3
- package/dist/utils/spec-formatters.d.ts +13 -23
- package/dist/utils/spec-formatters.js +41 -2
- package/dist/utils/spec-translations.d.ts +16 -3
- package/dist/utils/spec-translations.js +52 -13
- package/package.json +12 -6
package/dist/locales/ar.js
CHANGED
|
@@ -19,10 +19,12 @@ const ar = {
|
|
|
19
19
|
manage_users: "إدارة المستخدمين",
|
|
20
20
|
manage_org_users: "إدارة مستخدمي المؤسسة",
|
|
21
21
|
manage_metadata: "إدارة البيانات الوصفية",
|
|
22
|
+
manage_org_presentation: "إدارة عرض المؤسسة",
|
|
22
23
|
manage_platform_settings: "إدارة إعدادات المنصة",
|
|
23
24
|
setup_access: "الوصول إلى الإعداد",
|
|
24
25
|
setup_write: "كتابة الإعدادات",
|
|
25
26
|
studio_access: "الوصول إلى Studio",
|
|
27
|
+
manage_sharing: "إدارة المشاركة",
|
|
26
28
|
},
|
|
27
29
|
group: {
|
|
28
30
|
platform: 'منصة',
|
|
@@ -30,25 +32,47 @@ const ar = {
|
|
|
30
32
|
other: 'أخرى',
|
|
31
33
|
},
|
|
32
34
|
},
|
|
33
|
-
// objectui#3546 slice six —
|
|
34
|
-
//
|
|
35
|
+
// objectui#3546 slice six — the read-only summary of PermissionFacetLink's six
|
|
36
|
+
// authorization facets, plus the Studio link.
|
|
35
37
|
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
//
|
|
39
|
-
//
|
|
38
|
+
// The four count labels carry one slot per ar CLDR category (objectui#11432):
|
|
39
|
+
// `_zero` and `_other` (100-102…) singular, `_one`, `_two` the dual with the
|
|
40
|
+
// numeral in parentheses, `_few` (3-10) plural, `_many` (11-99) accusative
|
|
41
|
+
// singular. The base key keeps the «{{count}} مفرد(جمع)» marker for a call made
|
|
42
|
+
// without a count. The action-link arrow is not mirrored: it stays as in en,
|
|
43
|
+
// like marketplace.browseLink.
|
|
40
44
|
perm: {
|
|
41
45
|
facet: {
|
|
42
46
|
none: "لا شيء",
|
|
43
47
|
more: "+{{count}} المزيد",
|
|
44
48
|
objects: "{{count}} كائن(كائنات)",
|
|
49
|
+
objects_zero: "{{count}} كائن",
|
|
45
50
|
objects_one: "{{count}} كائن",
|
|
51
|
+
objects_two: "كائنان ({{count}})",
|
|
52
|
+
objects_few: "{{count}} كائنات",
|
|
53
|
+
objects_many: "{{count}} كائنًا",
|
|
54
|
+
objects_other: "{{count}} كائن",
|
|
46
55
|
fields: "{{count}} قاعدة(قواعد) حقول",
|
|
56
|
+
fields_zero: "{{count}} قاعدة حقول",
|
|
47
57
|
fields_one: "{{count}} قاعدة حقول",
|
|
58
|
+
fields_two: "قاعدتا حقول ({{count}})",
|
|
59
|
+
fields_few: "{{count}} قواعد حقول",
|
|
60
|
+
fields_many: "{{count}} قاعدة حقول",
|
|
61
|
+
fields_other: "{{count}} قاعدة حقول",
|
|
48
62
|
rls: "{{count}} سياسة(سياسات) RLS",
|
|
63
|
+
rls_zero: "{{count}} سياسة RLS",
|
|
49
64
|
rls_one: "{{count}} سياسة RLS",
|
|
65
|
+
rls_two: "سياستا RLS ({{count}})",
|
|
66
|
+
rls_few: "{{count}} سياسات RLS",
|
|
67
|
+
rls_many: "{{count}} سياسة RLS",
|
|
68
|
+
rls_other: "{{count}} سياسة RLS",
|
|
50
69
|
tabs: "{{count}} قاعدة(قواعد) تبويب",
|
|
70
|
+
tabs_zero: "{{count}} قاعدة تبويب",
|
|
51
71
|
tabs_one: "{{count}} قاعدة تبويب",
|
|
72
|
+
tabs_two: "قاعدتا تبويب ({{count}})",
|
|
73
|
+
tabs_few: "{{count}} قواعد تبويب",
|
|
74
|
+
tabs_many: "{{count}} قاعدة تبويب",
|
|
75
|
+
tabs_other: "{{count}} قاعدة تبويب",
|
|
52
76
|
adminScope: "تم تكوين الإدارة المفوَّضة",
|
|
53
77
|
designInStudio: "التصميم في Studio →",
|
|
54
78
|
designInStudioHint: "التصميم في Studio",
|
|
@@ -66,8 +90,16 @@ const ar = {
|
|
|
66
90
|
remove: 'إزالة {{label}}',
|
|
67
91
|
selectFirst: 'اختر {{fields}} أولاً',
|
|
68
92
|
selectRecord: 'اختيار سجل',
|
|
69
|
-
|
|
70
|
-
|
|
93
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
94
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
95
|
+
// without a count.
|
|
96
|
+
recordCount: 'عدد السجلات: {{count}}',
|
|
97
|
+
recordCount_zero: '{{count}} سجل',
|
|
98
|
+
recordCount_one: '{{count}} سجل',
|
|
99
|
+
recordCount_two: 'سجلان ({{count}})',
|
|
100
|
+
recordCount_few: '{{count}} سجلات',
|
|
101
|
+
recordCount_many: '{{count}} سجلًا',
|
|
102
|
+
recordCount_other: '{{count}} سجل',
|
|
71
103
|
pageOf: 'صفحة {{current}} من {{total}}',
|
|
72
104
|
filters: 'عوامل التصفية',
|
|
73
105
|
clear: 'مسح',
|
|
@@ -84,7 +116,7 @@ const ar = {
|
|
|
84
116
|
common: {
|
|
85
117
|
addToFavorites: "إضافة إلى المفضلة",
|
|
86
118
|
removeFromFavorites: "إزالة من المفضلة",
|
|
87
|
-
loading: "
|
|
119
|
+
loading: "جارٍ التحميل…",
|
|
88
120
|
save: "حفظ",
|
|
89
121
|
discard: "تجاهل",
|
|
90
122
|
cancel: "إلغاء",
|
|
@@ -119,8 +151,16 @@ const ar = {
|
|
|
119
151
|
closeChat: "إغلاق المحادثة",
|
|
120
152
|
closePanel: "إغلاق اللوحة",
|
|
121
153
|
resizeDrawer: "تغيير عرض اللوحة",
|
|
122
|
-
|
|
123
|
-
|
|
154
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
155
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
156
|
+
// without a count.
|
|
157
|
+
itemCount: "عدد العناصر: {{count}}",
|
|
158
|
+
itemCount_zero: "{{count}} عنصر",
|
|
159
|
+
itemCount_one: "{{count}} عنصر",
|
|
160
|
+
itemCount_two: "عنصران ({{count}})",
|
|
161
|
+
itemCount_few: "{{count}} عناصر",
|
|
162
|
+
itemCount_many: "{{count}} عنصرًا",
|
|
163
|
+
itemCount_other: "{{count}} عنصر",
|
|
124
164
|
toggleSidebar: "تبديل الشريط الجانبي",
|
|
125
165
|
package: "الحزمة",
|
|
126
166
|
done: "تم",
|
|
@@ -128,6 +168,16 @@ const ar = {
|
|
|
128
168
|
record: "سجل",
|
|
129
169
|
retry: "إعادة المحاولة",
|
|
130
170
|
printDialogHint: "يفتح مربع حوار الطباعة في المتصفح (ليس تصديرًا إلى PDF)",
|
|
171
|
+
// The non-grid row ceiling's footnote (objectui#7210). Two keys because
|
|
172
|
+
// there are two conditions: a reported `total` states the fact with BOTH
|
|
173
|
+
// numbers, a missing one cannot name how many. Kept terse deliberately —
|
|
174
|
+
// this copy is eagerly loaded, and since objectui#7399 these bytes are
|
|
175
|
+
// budgeted by the `i18n-locales` chunk, not `framework`. ⛔ That ceiling's
|
|
176
|
+
// headroom is deliberately NOT restated here — it moves on every
|
|
177
|
+
// re-baseline, and the figure that was here went stale.
|
|
178
|
+
// `pnpm check:eager-closure` prints it.
|
|
179
|
+
rowCeilingNote: "يتم عرض أول {{shown}} من أصل {{total}} سجل. ضيّق عامل التصفية.",
|
|
180
|
+
rowCeilingNoteUnknownTotal: "يتم عرض أول {{shown}} سجل. ضيّق عامل التصفية.",
|
|
131
181
|
},
|
|
132
182
|
actions: {
|
|
133
183
|
decisionOutput: {
|
|
@@ -139,6 +189,14 @@ const ar = {
|
|
|
139
189
|
acknowledge: 'لقد حفظتها',
|
|
140
190
|
copyAll: 'نسخ الكل',
|
|
141
191
|
},
|
|
192
|
+
notAvailableHere: '"{{action}}" غير متاح في الصفحة الحالية.',
|
|
193
|
+
completedSuccessfully: 'اكتمل الإجراء بنجاح',
|
|
194
|
+
failed: 'فشل الإجراء',
|
|
195
|
+
parallelFailed: 'فشل إجراء متوازٍ واحد أو أكثر',
|
|
196
|
+
undo: 'تراجع',
|
|
197
|
+
undone: 'تم التراجع عن التغيير',
|
|
198
|
+
undoneOperation: 'تراجع: {{description}}',
|
|
199
|
+
redoneOperation: 'إعادة: {{description}}',
|
|
142
200
|
},
|
|
143
201
|
validation: {
|
|
144
202
|
required: "{{field}} مطلوب",
|
|
@@ -156,19 +214,45 @@ const ar = {
|
|
|
156
214
|
},
|
|
157
215
|
form: {
|
|
158
216
|
noPermissionToSave: "ليس لديك إذن لحفظ هذا السجل.",
|
|
217
|
+
noPermissionToCreate: "ليس لديك إذن لإنشاء سجلات {{object}}. الحقول للقراءة فقط.",
|
|
218
|
+
noPermissionToEdit: "ليس لديك إذن لتعديل سجلات {{object}}. الحقول للقراءة فقط.",
|
|
159
219
|
submitFailed: "تعذّر الحفظ. يرجى المحاولة مرة أخرى.",
|
|
220
|
+
uploadInFlight: "انتظر حتى ينتهي الرفع قبل الحفظ.",
|
|
221
|
+
clearedOnHide: "تم مسح ما لم يعد ينطبق على القيم الحالية: {{fields}}",
|
|
222
|
+
visibleWhenFaulted: "تعذّر الإرسال: تعذّر تقييم قاعدة visibleWhen لـ {{fields}}. يجب إصلاح القاعدة قبل أن يصبح إرسال هذا النموذج ممكنًا.",
|
|
160
223
|
discardTitle: "تجاهل التغييرات؟",
|
|
161
224
|
discardMessage: "لديك تغييرات غير محفوظة. إذا أغلقت هذا النموذج الآن، ستفقد تعديلاتك.",
|
|
162
225
|
// objectui#4024 — the create/edit dialog's `sr-only` accessible
|
|
163
226
|
// description, used when the form declares no `description` of its own.
|
|
164
227
|
dialogDescriptionFallback: "املأ حقول النموذج ثم أرسل أو ألغِ.",
|
|
228
|
+
deniedDescription: "ليس لديك إذن لتعديل هذا الحقل.",
|
|
229
|
+
masterDetail: {
|
|
230
|
+
loadingColumns: "جارٍ تحميل الأعمدة…",
|
|
231
|
+
subtotal: "المجموع الفرعي",
|
|
232
|
+
tax: "الضريبة ({{rate}}%)",
|
|
233
|
+
total: "الإجمالي",
|
|
234
|
+
lineItem: "بند",
|
|
235
|
+
rowTitle: "{{title}} — الصف {{row}}",
|
|
236
|
+
applyRow: "تطبيق",
|
|
237
|
+
editorDescription: "أدخل السجل وبنوده ثم احفظ.",
|
|
238
|
+
noChildObject: "لم يُكوَّن كائن فرعي لهذه المجموعة: عيّن {{property}} إلى الكائن الذي تسرد صفوفه.",
|
|
239
|
+
schemaUnavailable: "تعذّر تحميل مخطط {{object}}، لذا لا توجد أعمدة لعرضها في هذه المجموعة. تحقّق من أن الكائن موجود وقابل للقراءة، ثم أعد التحميل.",
|
|
240
|
+
noRelationshipField: "تعذّر تحديد كيفية ارتباط {{object}} بـ {{parent}}: لا يوجد فيه حقل lookup أو master_detail يشير إلى الكائن الأصل. عيّن {{property}} في هذه المجموعة إلى الحقل الذي يحمل السجل الأصل.",
|
|
241
|
+
},
|
|
242
|
+
lineItems: {
|
|
243
|
+
title: "البنود",
|
|
244
|
+
saveRecordFirst: "احفظ السجل أولًا لإضافة البنود.",
|
|
245
|
+
notLoaded: "لم يتم تحميل بنود هذا السجل.",
|
|
246
|
+
loadFailed: "تعذّر تحميل البنود",
|
|
247
|
+
saveFailed: "تعذّر حفظ البنود",
|
|
248
|
+
noChildObject: "لم يُكوَّن كائن فرعي لهذه اللوحة: عيّن {{property}} إلى الكائن الذي تسرد صفوفه.",
|
|
249
|
+
},
|
|
165
250
|
keepEditing: "متابعة التحرير",
|
|
166
251
|
discard: "تجاهل",
|
|
167
252
|
conflictTitle: "تعارض في الحفظ",
|
|
168
253
|
conflictMessage: "قام شخص آخر بتغيير هذا السجل أثناء تحريرك. الكتابة فوقه ستستبدل تغييراته بتغييراتك.",
|
|
169
254
|
conflictLatestVersion: "وقت حفظه: {{time}}",
|
|
170
255
|
conflictOverwrite: "الكتابة فوقه",
|
|
171
|
-
addItem: "إضافة عنصر",
|
|
172
256
|
removeItem: "إزالة عنصر",
|
|
173
257
|
fieldRequired: "هذا الحقل مطلوب",
|
|
174
258
|
invalidFormat: "صيغة غير صالحة",
|
|
@@ -186,6 +270,12 @@ const ar = {
|
|
|
186
270
|
createSuccess: "تم إنشاء {{object}}",
|
|
187
271
|
updateSuccess: "تم تحديث {{object}}",
|
|
188
272
|
deleteSuccess: "تم حذف {{object}}",
|
|
273
|
+
created: "تم الإنشاء",
|
|
274
|
+
saved: "تم الحفظ",
|
|
275
|
+
savedNamed: "تم حفظ {{title}}",
|
|
276
|
+
submitted: "تم الإرسال",
|
|
277
|
+
errorLoading: "خطأ في تحميل النموذج",
|
|
278
|
+
navigateRefused: "تم رفض وجهة `navigateOnSuccess` المعلنة لهذا النموذج، لذلك لم يتم الانتقال.",
|
|
189
279
|
fullscreen: {
|
|
190
280
|
title: "تحرير النص",
|
|
191
281
|
description: "حرّر قيمة النص الكاملة، ثم احفظ التغييرات أو ألغِها.",
|
|
@@ -210,6 +300,12 @@ const ar = {
|
|
|
210
300
|
},
|
|
211
301
|
relativeDate: {
|
|
212
302
|
overdue: "متأخر {{count}} يوم",
|
|
303
|
+
overdue_zero: "متأخر {{count}} يوم",
|
|
304
|
+
overdue_one: "متأخر {{count}} يوم",
|
|
305
|
+
overdue_two: "متأخر يومين ({{count}})",
|
|
306
|
+
overdue_few: "متأخر {{count}} أيام",
|
|
307
|
+
overdue_many: "متأخر {{count}} يومًا",
|
|
308
|
+
overdue_other: "متأخر {{count}} يوم",
|
|
213
309
|
},
|
|
214
310
|
file: {
|
|
215
311
|
dragDropHere: 'اسحب الملفات وأفلتها هنا',
|
|
@@ -226,6 +322,7 @@ const ar = {
|
|
|
226
322
|
remove: 'إزالة {{name}}',
|
|
227
323
|
exceedsMaxSize: '"{{name}}" يتجاوز الحجم الأقصى ({{max}} ميغابايت)',
|
|
228
324
|
uploadFailed: 'فشل رفع "{{name}}": {{error}}',
|
|
325
|
+
uploadIncomplete: 'لم يكتمل رفع "{{name}}": لم يتم إرجاع معرّف الملف، ولم يُحفظ شيء',
|
|
229
326
|
},
|
|
230
327
|
richText: {
|
|
231
328
|
format: "التنسيق: {{format}}",
|
|
@@ -253,6 +350,9 @@ const ar = {
|
|
|
253
350
|
selectBusinessUnit: "اختر وحدة عمل",
|
|
254
351
|
selectPosition: "اختر منصباً",
|
|
255
352
|
selectUnitAndSubordinates: "اختر وحدة عمل",
|
|
353
|
+
selectField: "اختر حقل مستخدم",
|
|
354
|
+
noUserFields: "لا توجد حقول مستخدم في هذا الكائن",
|
|
355
|
+
fieldNotUserTyped: "{{name}} — ليس حقل مستخدم",
|
|
256
356
|
},
|
|
257
357
|
filterCondition: {
|
|
258
358
|
selectObjectFirst: "اختر كائناً أولاً.",
|
|
@@ -263,6 +363,26 @@ const ar = {
|
|
|
263
363
|
editAsJson: "التحرير بصيغة JSON",
|
|
264
364
|
useVisualBuilder: "استخدام المُنشئ المرئي",
|
|
265
365
|
},
|
|
366
|
+
object: {
|
|
367
|
+
invalidJson: "JSON غير صالح",
|
|
368
|
+
},
|
|
369
|
+
location: {
|
|
370
|
+
refusedFormat: "لم يتم الحفظ: أدخل زوجًا من خط العرض وخط الطول (مثال: 30.2741, 120.1551).",
|
|
371
|
+
refusedRange: "لم يتم الحفظ: {{detail}}",
|
|
372
|
+
latitude: "خط العرض",
|
|
373
|
+
longitude: "خط الطول",
|
|
374
|
+
refusedResidueOne: "لم يتم الحفظ: {{name}} «{{text}}» ليس رقمًا. أدخل أرقامًا عشرية عادية (مثال: 30.2741, 120.1551).",
|
|
375
|
+
refusedResidue: "لم يتم الحفظ: {{name}} «{{text}}» و{{otherName}} «{{otherText}}» ليسا رقمين. أدخل أرقامًا عشرية عادية (مثال: 30.2741, 120.1551).",
|
|
376
|
+
},
|
|
377
|
+
date: {
|
|
378
|
+
impossibleDay: "القيمة المحفوظة «{{value}}» ليست تاريخًا حقيقيًا. اختر تاريخًا لاستبدالها.",
|
|
379
|
+
},
|
|
380
|
+
dateTime: {
|
|
381
|
+
impossibleDay: "القيمة المحفوظة «{{value}}» ليست تاريخًا حقيقيًا. اختر تاريخًا ووقتًا لاستبدالها.",
|
|
382
|
+
},
|
|
383
|
+
number: {
|
|
384
|
+
badInput: "لم يتم الحفظ: النص في هذا المربع ليس رقمًا. أدخل رقمًا عشريًا عاديًا (مثال: {{example}}).",
|
|
385
|
+
},
|
|
266
386
|
tags: {
|
|
267
387
|
placeholder: "اكتب واضغط Enter للإضافة…",
|
|
268
388
|
},
|
|
@@ -278,6 +398,16 @@ const ar = {
|
|
|
278
398
|
characterCount: "عدد الأحرف: {{count}} من {{max}}",
|
|
279
399
|
charactersRemaining: "الأحرف المتبقية: {{count}}",
|
|
280
400
|
},
|
|
401
|
+
grid: {
|
|
402
|
+
addLine: "إضافة سطر",
|
|
403
|
+
noItems: "لا توجد عناصر",
|
|
404
|
+
noItemsAddHint: "لا توجد عناصر بعد — انقر على «{{label}}» للبدء.",
|
|
405
|
+
optionalColumns: "أعمدة اختيارية",
|
|
406
|
+
computed: "محسوب",
|
|
407
|
+
openRow: "فتح الصف",
|
|
408
|
+
duplicateRow: "تكرار الصف",
|
|
409
|
+
removeRow: "إزالة الصف",
|
|
410
|
+
},
|
|
281
411
|
},
|
|
282
412
|
table: {
|
|
283
413
|
rowsPerPage: "صفوف في الصفحة",
|
|
@@ -306,23 +436,59 @@ const ar = {
|
|
|
306
436
|
open: "فتح",
|
|
307
437
|
search: "بحث…",
|
|
308
438
|
modified: "{{count}} صف(صفوف) معدّل(ة)",
|
|
439
|
+
modified_zero: "{{count}} صف معدّل",
|
|
440
|
+
modified_one: "{{count}} صف معدّل",
|
|
441
|
+
modified_two: "صفان معدّلان ({{count}})",
|
|
442
|
+
modified_few: "{{count}} صفوف معدّلة",
|
|
443
|
+
modified_many: "{{count}} صفًا معدّلًا",
|
|
444
|
+
modified_other: "{{count}} صف معدّل",
|
|
309
445
|
saveFailed: 'فشل الحفظ',
|
|
310
446
|
selected: "{{count}} محدد(ة)",
|
|
447
|
+
selected_zero: "تم تحديد {{count}}",
|
|
448
|
+
selected_one: "تم تحديد {{count}}",
|
|
449
|
+
selected_two: "تم تحديد {{count}}",
|
|
450
|
+
selected_few: "تم تحديد {{count}}",
|
|
451
|
+
selected_many: "تم تحديد {{count}}",
|
|
452
|
+
selected_other: "تم تحديد {{count}}",
|
|
311
453
|
edit: "تعديل",
|
|
312
454
|
delete: "حذف",
|
|
313
455
|
},
|
|
314
456
|
grid: {
|
|
315
457
|
bulkSelected: "تم تحديد {{count}}",
|
|
458
|
+
bulkSelected_zero: "تم تحديد {{count}}",
|
|
459
|
+
bulkSelected_one: "تم تحديد {{count}}",
|
|
460
|
+
bulkSelected_two: "تم تحديد {{count}}",
|
|
461
|
+
bulkSelected_few: "تم تحديد {{count}}",
|
|
462
|
+
bulkSelected_many: "تم تحديد {{count}}",
|
|
463
|
+
bulkSelected_other: "تم تحديد {{count}}",
|
|
316
464
|
bulkSelectedAllMatches: "تم تحديد {{count}} (كل النتائج المطابقة)",
|
|
317
465
|
bulkClear: "إلغاء التحديد",
|
|
318
466
|
bulkAllOnPage: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
467
|
+
bulkAllOnPage_zero: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
468
|
+
bulkAllOnPage_one: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
469
|
+
bulkAllOnPage_two: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
470
|
+
bulkAllOnPage_few: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
471
|
+
bulkAllOnPage_many: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
472
|
+
bulkAllOnPage_other: "تم تحديد جميع العناصر ({{count}}) في هذه الصفحة.",
|
|
319
473
|
bulkSelectAllMatching: "تحديد كل النتائج المطابقة ({{count}})",
|
|
320
474
|
bulkAllMatchingSelected: "تم تحديد جميع السجلات المطابقة ({{count}}).",
|
|
321
475
|
bulk: {
|
|
322
476
|
confirmDefault: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
477
|
+
confirmDefault_zero: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
478
|
+
confirmDefault_one: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
479
|
+
confirmDefault_two: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
480
|
+
confirmDefault_few: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
481
|
+
confirmDefault_many: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
482
|
+
confirmDefault_other: "سيُطبَّق هذا على {{count}} من السجلات.",
|
|
323
483
|
overLimit: "التحديد ({{count}}) يتجاوز حد الإجراء ({{limit}}). قلّل التحديد للمتابعة.",
|
|
324
484
|
affectedRecords: "السجلات المتأثرة ({{count}}):",
|
|
325
485
|
skippedIneligible: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
486
|
+
skippedIneligible_zero: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
487
|
+
skippedIneligible_one: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
488
|
+
skippedIneligible_two: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
489
|
+
skippedIneligible_few: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
490
|
+
skippedIneligible_many: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
491
|
+
skippedIneligible_other: '{{count}} من السجلات المحددة غير مؤهلة لهذا الإجراء وسيتم تخطيها.',
|
|
326
492
|
rowFallback: "الصف {{index}}",
|
|
327
493
|
andMore: "… و{{count}} أخرى",
|
|
328
494
|
processed: "تمت معالجة {{count}} / {{total}}",
|
|
@@ -340,7 +506,6 @@ const ar = {
|
|
|
340
506
|
undo: "تراجع",
|
|
341
507
|
undoing: "جارٍ التراجع…",
|
|
342
508
|
done: "تم",
|
|
343
|
-
selectPlaceholder: "اختر…",
|
|
344
509
|
loading: "جارٍ التحميل…",
|
|
345
510
|
},
|
|
346
511
|
actions: "إجراءات",
|
|
@@ -348,10 +513,10 @@ const ar = {
|
|
|
348
513
|
delete: "حذف",
|
|
349
514
|
export: "تصدير",
|
|
350
515
|
exportAs: "تصدير كـ {{format}}",
|
|
351
|
-
loading: "
|
|
516
|
+
loading: "جارٍ تحميل الشبكة…",
|
|
352
517
|
errorLoading: "خطأ في تحميل الشبكة",
|
|
353
518
|
pullToRefresh: "اسحب للتحديث",
|
|
354
|
-
refreshing: "
|
|
519
|
+
refreshing: "جارٍ التحديث…",
|
|
355
520
|
openRecord: "فتح السجل",
|
|
356
521
|
rowHeight: "ارتفاع الصف: {{mode}}",
|
|
357
522
|
openMenu: "فتح القائمة",
|
|
@@ -359,6 +524,14 @@ const ar = {
|
|
|
359
524
|
yes: "نعم",
|
|
360
525
|
no: "لا",
|
|
361
526
|
systemFields: "النظام",
|
|
527
|
+
// objectui#10881 — the grouped grid's two refusals: over a data source
|
|
528
|
+
// that cannot answer the group header query, and over rows a host
|
|
529
|
+
// handed in while declaring them one page of more. `queryGroupHeaders`
|
|
530
|
+
// is the member's name and stays untranslated.
|
|
531
|
+
grouping: {
|
|
532
|
+
needsHeaderQuery: "هذا العرض مُجمَّع، لكن مصدر بياناته لا يطبّق queryGroupHeaders، لذا لا يمكن عدّ المجموعات. أزِل التجميع لعرض السجلات.",
|
|
533
|
+
needsWholeRows: "يتطلب التجميع جميع السجلات، لكن هذه الشبكة تلقّت صفحة واحدة منها فقط، لذا لا يمكن عدّ المجموعات. مرّر جميع السجلات، أو دع الشبكة تجلبها من مصدر بيانات يطبّق queryGroupHeaders.",
|
|
534
|
+
},
|
|
362
535
|
// objectui#4024 — column-footer aggregate prefixes, keyed by the spec's
|
|
363
536
|
// `ColumnSummary` vocabulary. `pattern` owns the label/value join so this
|
|
364
537
|
// pack controls its own separator and word order.
|
|
@@ -385,10 +558,18 @@ const ar = {
|
|
|
385
558
|
},
|
|
386
559
|
import: {
|
|
387
560
|
downloadTemplate: "تنزيل القالب",
|
|
388
|
-
downloadTemplateHint: "احصل على ملف
|
|
561
|
+
downloadTemplateHint: "احصل على ملف Excel بالأعمدة التي يمكنك استيرادها (الحقول المطلوبة معلَّمة بـ *) مع تعليمات التعبئة.",
|
|
389
562
|
templateFileName: "{{object}}-import-template",
|
|
563
|
+
templateDownloadFailed: "تعذّر تنزيل القالب. يرجى المحاولة مرة أخرى.",
|
|
564
|
+
templateNotPermitted: "ليست لديك صلاحية إنشاء سجلات لهذا الكائن، لذا فإن قالب الاستيراد غير متاح.",
|
|
390
565
|
autoMatched: "تمت المطابقة تلقائيًا",
|
|
391
566
|
autoMatchedSummary: "تمت مطابقة {{count}} عمودًا تلقائيًا — راجعها وعدّلها أدناه.",
|
|
567
|
+
autoMatchedSummary_zero: "تمت مطابقة {{count}} عمود تلقائيًا — راجِع وعدِّل أدناه.",
|
|
568
|
+
autoMatchedSummary_one: "تمت مطابقة {{count}} عمود تلقائيًا — راجِع وعدِّل أدناه.",
|
|
569
|
+
autoMatchedSummary_two: "تمت مطابقة عمودين ({{count}}) تلقائيًا — راجِع وعدِّل أدناه.",
|
|
570
|
+
autoMatchedSummary_few: "تمت مطابقة {{count}} أعمدة تلقائيًا — راجِع وعدِّل أدناه.",
|
|
571
|
+
autoMatchedSummary_many: "تمت مطابقة {{count}} عمودًا تلقائيًا — راجِع وعدِّل أدناه.",
|
|
572
|
+
autoMatchedSummary_other: "تمت مطابقة {{count}} عمود تلقائيًا — راجِع وعدِّل أدناه.",
|
|
392
573
|
confidence: {
|
|
393
574
|
high: "ثقة عالية",
|
|
394
575
|
medium: "ثقة متوسطة",
|
|
@@ -401,8 +582,26 @@ const ar = {
|
|
|
401
582
|
cancelImport: "إلغاء الاستيراد",
|
|
402
583
|
importCancelled: "تم إلغاء الاستيراد",
|
|
403
584
|
resultsTruncated: "عرض نتائج أول {{count}} صفًا (من أصل {{total}}).",
|
|
585
|
+
resultsTruncated_zero: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
586
|
+
resultsTruncated_one: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
587
|
+
resultsTruncated_two: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
588
|
+
resultsTruncated_few: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
589
|
+
resultsTruncated_many: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
590
|
+
resultsTruncated_other: "عرض نتائج الصفوف الأولى: {{count}} (من أصل {{total}}).",
|
|
404
591
|
createdCount: "تم إنشاء {{count}}",
|
|
592
|
+
createdCount_zero: "تم إنشاء {{count}}",
|
|
593
|
+
createdCount_one: "تم إنشاء {{count}}",
|
|
594
|
+
createdCount_two: "تم إنشاء {{count}}",
|
|
595
|
+
createdCount_few: "تم إنشاء {{count}}",
|
|
596
|
+
createdCount_many: "تم إنشاء {{count}}",
|
|
597
|
+
createdCount_other: "تم إنشاء {{count}}",
|
|
405
598
|
updatedCount: "تم تحديث {{count}}",
|
|
599
|
+
updatedCount_zero: "تم تحديث {{count}}",
|
|
600
|
+
updatedCount_one: "تم تحديث {{count}}",
|
|
601
|
+
updatedCount_two: "تم تحديث {{count}}",
|
|
602
|
+
updatedCount_few: "تم تحديث {{count}}",
|
|
603
|
+
updatedCount_many: "تم تحديث {{count}}",
|
|
604
|
+
updatedCount_other: "تم تحديث {{count}}",
|
|
406
605
|
downloadFailed: "تنزيل الصفوف الفاشلة",
|
|
407
606
|
options: "خيارات الاستيراد",
|
|
408
607
|
writeMode: "عند تطابق صف مع سجل موجود",
|
|
@@ -450,6 +649,12 @@ const ar = {
|
|
|
450
649
|
historyColResult: "النتيجة",
|
|
451
650
|
historyColTime: "الوقت",
|
|
452
651
|
errorCount: "{{count}} من الأخطاء",
|
|
652
|
+
errorCount_zero: "{{count}} من الأخطاء",
|
|
653
|
+
errorCount_one: "{{count}} من الأخطاء",
|
|
654
|
+
errorCount_two: "{{count}} من الأخطاء",
|
|
655
|
+
errorCount_few: "{{count}} من الأخطاء",
|
|
656
|
+
errorCount_many: "{{count}} من الأخطاء",
|
|
657
|
+
errorCount_other: "{{count}} من الأخطاء",
|
|
453
658
|
undoImport: "التراجع عن الاستيراد",
|
|
454
659
|
undoing: "جارٍ التراجع…",
|
|
455
660
|
undoConfirm: "هل تريد التراجع عن هذا الاستيراد؟ ستُحذف السجلات التي أنشأها وتُستعاد السجلات التي حدّثها إلى قيمها السابقة.",
|
|
@@ -510,7 +715,19 @@ const ar = {
|
|
|
510
715
|
mapped: "مُعيَّن",
|
|
511
716
|
skipped: "مُتخطَّى",
|
|
512
717
|
rowsWithErrors: "{{count}} صف(صفوف) بها أخطاء",
|
|
718
|
+
rowsWithErrors_zero: "{{count}} صف بها أخطاء",
|
|
719
|
+
rowsWithErrors_one: "{{count}} صف به أخطاء",
|
|
720
|
+
rowsWithErrors_two: "صفان بهما أخطاء ({{count}})",
|
|
721
|
+
rowsWithErrors_few: "{{count}} صفوف بها أخطاء",
|
|
722
|
+
rowsWithErrors_many: "{{count}} صفًا بها أخطاء",
|
|
723
|
+
rowsWithErrors_other: "{{count}} صف بها أخطاء",
|
|
513
724
|
rowsCorrected: "{{count}} صف(صفوف) تم تصحيحها",
|
|
725
|
+
rowsCorrected_zero: "تم تصحيح {{count}} صف",
|
|
726
|
+
rowsCorrected_one: "تم تصحيح {{count}} صف",
|
|
727
|
+
rowsCorrected_two: "تم تصحيح صفين ({{count}})",
|
|
728
|
+
rowsCorrected_few: "تم تصحيح {{count}} صفوف",
|
|
729
|
+
rowsCorrected_many: "تم تصحيح {{count}} صفًا",
|
|
730
|
+
rowsCorrected_other: "تم تصحيح {{count}} صف",
|
|
514
731
|
clickToFix: "— انقر على خلية مميزة للتعديل.",
|
|
515
732
|
showingRows: "عرض {{shown}} من {{total}} صف",
|
|
516
733
|
importing: "جارٍ الاستيراد… {{progress}}%",
|
|
@@ -518,11 +735,23 @@ const ar = {
|
|
|
518
735
|
imported: "{{count}} مُستورَد(ة)",
|
|
519
736
|
skippedCount: "{{count}} مُتخطَّى(ة)",
|
|
520
737
|
moreErrors: "…و{{count}} خطأ(أخطاء) أخرى",
|
|
738
|
+
moreErrors_zero: "…و{{count}} خطأ آخر",
|
|
739
|
+
moreErrors_one: "…و{{count}} خطأ آخر",
|
|
740
|
+
moreErrors_two: "…وخطآن آخران ({{count}})",
|
|
741
|
+
moreErrors_few: "…و{{count}} أخطاء أخرى",
|
|
742
|
+
moreErrors_many: "…و{{count}} خطأً آخر",
|
|
743
|
+
moreErrors_other: "…و{{count}} خطأ آخر",
|
|
521
744
|
cancel: "إلغاء",
|
|
522
745
|
back: "رجوع",
|
|
523
746
|
next: "التالي",
|
|
524
747
|
close: "إغلاق",
|
|
525
748
|
importNRows: "استيراد {{count}} صف",
|
|
749
|
+
importNRows_zero: "استيراد {{count}} صف",
|
|
750
|
+
importNRows_one: "استيراد {{count}} صف",
|
|
751
|
+
importNRows_two: "استيراد صفين ({{count}})",
|
|
752
|
+
importNRows_few: "استيراد {{count}} صفوف",
|
|
753
|
+
importNRows_many: "استيراد {{count}} صفًا",
|
|
754
|
+
importNRows_other: "استيراد {{count}} صف",
|
|
526
755
|
importingProgress: "جارٍ الاستيراد…",
|
|
527
756
|
requiredMark: "*",
|
|
528
757
|
required: "مطلوب",
|
|
@@ -534,11 +763,41 @@ const ar = {
|
|
|
534
763
|
month: "شهر",
|
|
535
764
|
week: "أسبوع",
|
|
536
765
|
day: "يوم",
|
|
537
|
-
agenda: "جدول أعمال",
|
|
538
766
|
allDay: "طوال اليوم",
|
|
539
|
-
noEvents: "لا توجد أحداث",
|
|
540
767
|
newEvent: "حدث جديد",
|
|
541
768
|
moreEvents: "+{{count}} المزيد",
|
|
769
|
+
unscheduled: "غير مجدولة ({{count}})",
|
|
770
|
+
loading: "جارٍ تحميل التقويم…",
|
|
771
|
+
loadError: "خطأ: {{message}}",
|
|
772
|
+
configRequired: "إعداد التقويم مطلوب. يُرجى تحديد startDateField، وهو المفتاح المطلوب الوحيد للتقويم؛ ويُحلّ عنوان الحدث دون titleField.",
|
|
773
|
+
configRequiredHint: "هو ينتمي إلى كتلة calendar في العرض. صفحة الواجهة ليس لها فتحة تقويم خاصة بها: وجّه sourceView الخاص بها إلى عرض يعلن واحدة.",
|
|
774
|
+
eventDetails: "تفاصيل الحدث",
|
|
775
|
+
pullToRefresh: "اسحب للتحديث",
|
|
776
|
+
refreshing: "جارٍ التحديث…",
|
|
777
|
+
onDate: "في {{date}}",
|
|
778
|
+
eventTitle: "العنوان",
|
|
779
|
+
eventTitlePlaceholder: "ما موضوع هذا الحدث؟",
|
|
780
|
+
creating: "جارٍ الإنشاء…",
|
|
781
|
+
titleRequired: "العنوان مطلوب",
|
|
782
|
+
a11y: {
|
|
783
|
+
region: "التقويم",
|
|
784
|
+
grid: "شبكة التقويم",
|
|
785
|
+
goToToday: "الانتقال إلى اليوم",
|
|
786
|
+
previousPeriod: "الفترة السابقة",
|
|
787
|
+
nextPeriod: "الفترة التالية",
|
|
788
|
+
currentDate: "التاريخ الحالي: {{date}}",
|
|
789
|
+
dayCell: "{{date}}، عدد الأحداث: {{count}}",
|
|
790
|
+
dayCell_zero: "{{date}}، {{count}} حدث",
|
|
791
|
+
dayCell_one: "{{date}}، {{count}} حدث",
|
|
792
|
+
dayCell_two: "{{date}}، حدثان ({{count}})",
|
|
793
|
+
dayCell_few: "{{date}}، {{count}} أحداث",
|
|
794
|
+
dayCell_many: "{{date}}، {{count}} حدثًا",
|
|
795
|
+
dayCell_other: "{{date}}، عدد الأحداث: {{count}}",
|
|
796
|
+
resizeEventEnd: "تغيير نهاية الحدث",
|
|
797
|
+
resizeEventEndHint: "اسحب لتغيير تاريخ الانتهاء",
|
|
798
|
+
resizeStart: "تغيير وقت البدء",
|
|
799
|
+
resizeEnd: "تغيير وقت الانتهاء",
|
|
800
|
+
},
|
|
542
801
|
},
|
|
543
802
|
list: {
|
|
544
803
|
firstRunTitle: "لا يوجد شيء هنا بعد",
|
|
@@ -580,8 +839,16 @@ const ar = {
|
|
|
580
839
|
},
|
|
581
840
|
refresh: "تحديث",
|
|
582
841
|
loading: "جارٍ تحميل السجلات…",
|
|
583
|
-
|
|
584
|
-
|
|
842
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
843
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
844
|
+
// without a count.
|
|
845
|
+
recordCount: "عدد السجلات: {{count}}",
|
|
846
|
+
recordCount_zero: "{{count}} سجل",
|
|
847
|
+
recordCount_one: "{{count}} سجل",
|
|
848
|
+
recordCount_two: "سجلان ({{count}})",
|
|
849
|
+
recordCount_few: "{{count}} سجلات",
|
|
850
|
+
recordCount_many: "{{count}} سجلًا",
|
|
851
|
+
recordCount_other: "{{count}} سجل",
|
|
585
852
|
addRecord: "إضافة سجل",
|
|
586
853
|
tabs: "علامات التبويب",
|
|
587
854
|
allRecords: "جميع السجلات",
|
|
@@ -613,7 +880,7 @@ const ar = {
|
|
|
613
880
|
hideFieldsTitle: "إخفاء الحقول",
|
|
614
881
|
dataLimitReached: "يتم عرض أول {{limit}} سجل. قد تتوفر بيانات إضافية.",
|
|
615
882
|
viewSettings: "إعدادات العرض",
|
|
616
|
-
viewSettingsHint: "التجميع واللون والكثافة والحقول المرئية.",
|
|
883
|
+
viewSettingsHint: "التجميع واللون والكثافة والحقول المرئية. ينطبق على جميع المستخدمين الذين يستخدمون هذا العرض.",
|
|
617
884
|
addGroup: "إضافة حقل مجموعة",
|
|
618
885
|
collapsedByDefault: "مطوي افتراضياً",
|
|
619
886
|
removeGroup: "إزالة",
|
|
@@ -678,6 +945,17 @@ const ar = {
|
|
|
678
945
|
},
|
|
679
946
|
gantt: {
|
|
680
947
|
rowLabel: "العناصر",
|
|
948
|
+
unusableRange: {
|
|
949
|
+
malformedDate: "نطاق تواريخ جانت غير صالح للاستخدام — {{path}} يساوي {{value}}، وهو ليس تاريخًا صالحًا. يجب أن تكون كل تواريخ جانت قابلة للتحليل: startDate و endDate لكل عنصر صف، بالإضافة إلى أي minDate / maxDate مثبّت في المخطط.",
|
|
950
|
+
malformedRow: "صفوف جانت غير صالحة للاستخدام — {{path}} يساوي {{value}}، وهو ليس على شكل صف. يقرأ جانت items كقائمة من الصفوف، وكل صف ككائن يحمل label و items خاصة به، و items كل صف كقائمة من الأشرطة؛ لا يمكن رسم null أو رقم أو سلسلة نصية أو كائن عادي في أي من هذه المواضع.",
|
|
951
|
+
inverted: "نطاق تواريخ جانت غير صالح للاستخدام — minDate {{minDate}} يقع بعد maxDate {{maxDate}}. يتجاوز minDate / maxDate المثبّت النطاق المحسوب من الصفوف، لذلك لا يحتوي هذا المحور على أي أعمدة ولا يمكن وضع أي شريط عليه؛ بدّل القيمتين.",
|
|
952
|
+
},
|
|
953
|
+
},
|
|
954
|
+
unsupported: {
|
|
955
|
+
objectBoundGantt: "النوع \"gantt\" غير مدعوم — المخطط الزمني المرتبط بكائن يعرض أنواع التغذية ({{variants}}). يحتاج مخطط جانت إلى صفوف صريحة، لكل منها عناصر items متداخلة خاصة به، لذلك لا يؤثر محور جانت (scale) هنا.",
|
|
956
|
+
},
|
|
957
|
+
unconfigured: {
|
|
958
|
+
noDateAxis: "محور تواريخ المخطط الزمني مطلوب — هذا العرض لا يعلن أي حقل تاريخ، والمخطط الزمني المرتبط بكائن لا يخترع حقلاً. أعلن أحد الحقول التالية: {{fields}}. الأول هو صيغة المواصفة، والبقية أسماء مستعارة قديمة.",
|
|
681
959
|
},
|
|
682
960
|
},
|
|
683
961
|
gantt: {
|
|
@@ -695,6 +973,7 @@ const ar = {
|
|
|
695
973
|
},
|
|
696
974
|
aria: {
|
|
697
975
|
taskList: "قائمة المهام",
|
|
976
|
+
refreshing: "جارٍ التحديث…",
|
|
698
977
|
},
|
|
699
978
|
tooltip: {
|
|
700
979
|
days: "ي",
|
|
@@ -740,13 +1019,31 @@ const ar = {
|
|
|
740
1019
|
conflict: {
|
|
741
1020
|
title: "تعارض في الجدولة",
|
|
742
1021
|
body: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1022
|
+
body_zero: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1023
|
+
body_one: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1024
|
+
body_two: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1025
|
+
body_few: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1026
|
+
body_many: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
1027
|
+
body_other: "يتعارض هذا النقل مع قيود التبعية. هل تريد إعادة جدولة {{count}} من المهام المتأثرة تلقائيًا؟",
|
|
743
1028
|
confirm: "إعادة الجدولة تلقائيًا",
|
|
744
1029
|
cancel: "الإبقاء كما هو",
|
|
745
1030
|
},
|
|
746
1031
|
autoScheduleDlg: {
|
|
747
1032
|
title: "الجدولة التلقائية",
|
|
748
1033
|
body: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1034
|
+
body_zero: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1035
|
+
body_one: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1036
|
+
body_two: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1037
|
+
body_few: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1038
|
+
body_many: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
1039
|
+
body_other: "هل تريد تأخير {{count}} من المهام لتلبية روابط التبعية؟",
|
|
749
1040
|
skipped: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1041
|
+
skipped_zero: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1042
|
+
skipped_one: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1043
|
+
skipped_two: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1044
|
+
skipped_few: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1045
|
+
skipped_many: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
1046
|
+
skipped_other: "{{count}} من المهام المقفلة تخالف الروابط أيضًا وقد تم تخطيها.",
|
|
750
1047
|
confirm: "تطبيق",
|
|
751
1048
|
cancel: "إلغاء",
|
|
752
1049
|
none: "جميع التبعيات مستوفاة — لا شيء لإعادة جدولته.",
|
|
@@ -825,6 +1122,7 @@ const ar = {
|
|
|
825
1122
|
tabActionsFor: "إجراءات العرض لـ {{name}}",
|
|
826
1123
|
readonlyAriaLabel: "عرض للقراءة فقط",
|
|
827
1124
|
readonlyTooltip: "عرض النظام — معرَّف في الكود، للقراءة فقط.",
|
|
1125
|
+
malformedFilter: "عامل تصفية طريقة العرض هذه غير صالح، لذا لا تُعرض أي سجلات: يتعذّر تطبيق الشرط {{subject}}.",
|
|
828
1126
|
},
|
|
829
1127
|
designer: {
|
|
830
1128
|
undo: "تراجع",
|
|
@@ -851,8 +1149,16 @@ const ar = {
|
|
|
851
1149
|
addReaction: "إضافة تفاعل",
|
|
852
1150
|
pageHeaderActions: "إجراءات رأس الصفحة",
|
|
853
1151
|
emojiPicker: "منتقي الرموز التعبيرية",
|
|
854
|
-
|
|
855
|
-
|
|
1152
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
1153
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
1154
|
+
// without a count.
|
|
1155
|
+
reactionCount: "{{emoji}} عدد التفاعلات: {{count}}",
|
|
1156
|
+
reactionCount_zero: "{{emoji}} {{count}} تفاعل",
|
|
1157
|
+
reactionCount_one: "{{emoji}} {{count}} تفاعل",
|
|
1158
|
+
reactionCount_two: "{{emoji}} تفاعلان ({{count}})",
|
|
1159
|
+
reactionCount_few: "{{emoji}} {{count}} تفاعلات",
|
|
1160
|
+
reactionCount_many: "{{emoji}} {{count}} تفاعلًا",
|
|
1161
|
+
reactionCount_other: "{{emoji}} {{count}} تفاعل",
|
|
856
1162
|
recordDetail: "تفاصيل السجل",
|
|
857
1163
|
recordDetailWithLabel: "تفاصيل {{label}}",
|
|
858
1164
|
openAsFullPage: "فتح كصفحة كاملة",
|
|
@@ -870,7 +1176,7 @@ const ar = {
|
|
|
870
1176
|
relatedRecords: "{{count}} سجلات",
|
|
871
1177
|
relatedRecordOne: "{{count}} سجل",
|
|
872
1178
|
noRelatedRecords: "لا توجد سجلات ذات صلة",
|
|
873
|
-
loading: "
|
|
1179
|
+
loading: "جارٍ التحميل…",
|
|
874
1180
|
copyToClipboard: "نسخ إلى الحافظة",
|
|
875
1181
|
copied: "تم النسخ!",
|
|
876
1182
|
deleteConfirmation: "هل أنت متأكد أنك تريد حذف هذا السجل؟",
|
|
@@ -879,7 +1185,6 @@ const ar = {
|
|
|
879
1185
|
viewAll: "عرض الكل",
|
|
880
1186
|
new: "جديد",
|
|
881
1187
|
add: "إضافة",
|
|
882
|
-
emptyValue: "—",
|
|
883
1188
|
comments: "التعليقات",
|
|
884
1189
|
searchComments: "البحث في التعليقات…",
|
|
885
1190
|
addCommentPlaceholder: "أضف تعليقاً… (Ctrl+Enter للإرسال)",
|
|
@@ -890,11 +1195,34 @@ const ar = {
|
|
|
890
1195
|
unpin: "إلغاء التثبيت",
|
|
891
1196
|
justNow: "الآن",
|
|
892
1197
|
minutesAgo: "منذ {{count}} دقيقة",
|
|
1198
|
+
minutesAgo_zero: "منذ {{count}} دقيقة",
|
|
1199
|
+
minutesAgo_one: "منذ {{count}} دقيقة",
|
|
1200
|
+
minutesAgo_two: "منذ دقيقتين ({{count}})",
|
|
1201
|
+
minutesAgo_few: "منذ {{count}} دقائق",
|
|
1202
|
+
minutesAgo_many: "منذ {{count}} دقيقة",
|
|
1203
|
+
minutesAgo_other: "منذ {{count}} دقيقة",
|
|
893
1204
|
hoursAgo: "منذ {{count}} ساعة",
|
|
1205
|
+
hoursAgo_zero: "منذ {{count}} ساعة",
|
|
1206
|
+
hoursAgo_one: "منذ {{count}} ساعة",
|
|
1207
|
+
hoursAgo_two: "منذ ساعتين ({{count}})",
|
|
1208
|
+
hoursAgo_few: "منذ {{count}} ساعات",
|
|
1209
|
+
hoursAgo_many: "منذ {{count}} ساعة",
|
|
1210
|
+
hoursAgo_other: "منذ {{count}} ساعة",
|
|
894
1211
|
daysAgo: "منذ {{count}} يوم",
|
|
1212
|
+
daysAgo_zero: "منذ {{count}} يوم",
|
|
1213
|
+
daysAgo_one: "منذ {{count}} يوم",
|
|
1214
|
+
daysAgo_two: "منذ يومين ({{count}})",
|
|
1215
|
+
daysAgo_few: "منذ {{count}} أيام",
|
|
1216
|
+
daysAgo_many: "منذ {{count}} يومًا",
|
|
1217
|
+
daysAgo_other: "منذ {{count}} يوم",
|
|
895
1218
|
dropFilesToUpload: "اسحب الملفات هنا أو انقر للرفع",
|
|
896
1219
|
attachmentCount: "{{count}} مرفق",
|
|
897
|
-
|
|
1220
|
+
attachmentCount_zero: "{{count}} مرفق",
|
|
1221
|
+
attachmentCount_one: "{{count}} مرفق",
|
|
1222
|
+
attachmentCount_two: "مرفقان ({{count}})",
|
|
1223
|
+
attachmentCount_few: "{{count}} مرفقات",
|
|
1224
|
+
attachmentCount_many: "{{count}} مرفقًا",
|
|
1225
|
+
attachmentCount_other: "{{count}} مرفق",
|
|
898
1226
|
removeAttachment: "إزالة المرفق",
|
|
899
1227
|
// Record Attachments panel (enable.files, objectstack#4358)
|
|
900
1228
|
attachments: "المرفقات",
|
|
@@ -912,11 +1240,6 @@ const ar = {
|
|
|
912
1240
|
attachmentsLoadFailed: "تعذر تحميل مرفقات هذا السجل.",
|
|
913
1241
|
attachmentsApiUnavailable: "قائمة المرفقات غير متاحة على هذا الكائن.",
|
|
914
1242
|
retryLoadAttachments: "إعادة المحاولة",
|
|
915
|
-
unifiedDiff: "عرض موحد",
|
|
916
|
-
sideBySideDiff: "عرض جنباً إلى جنب",
|
|
917
|
-
noChanges: "لا توجد تغييرات",
|
|
918
|
-
previousVersion: "السابق",
|
|
919
|
-
currentVersion: "الحالي",
|
|
920
1243
|
discussion: "المناقشة",
|
|
921
1244
|
showDiscussion: "إظهار المناقشة ({{count}})",
|
|
922
1245
|
hideDiscussion: "إخفاء المناقشة",
|
|
@@ -931,25 +1254,39 @@ const ar = {
|
|
|
931
1254
|
writeComment: "اكتب تعليقاً…",
|
|
932
1255
|
subscribedTooltip: "مشترك — انقر لإلغاء الاشتراك",
|
|
933
1256
|
unsubscribedTooltip: "الاشتراك في الإشعارات",
|
|
934
|
-
firstRecord: "السجل الأول (Home)",
|
|
935
|
-
previousRecordKey: "السجل السابق (←)",
|
|
936
|
-
nextRecordKey: "السجل التالي (→)",
|
|
937
|
-
lastRecord: "السجل الأخير (End)",
|
|
938
1257
|
noRecords: "لا توجد سجلات",
|
|
939
|
-
searchWhileNavigating: "البحث أثناء التصفح",
|
|
940
|
-
searchRecords: "البحث في السجلات…",
|
|
941
1258
|
allActivity: "كل النشاط",
|
|
942
1259
|
commentsOnly: "التعليقات فقط",
|
|
943
1260
|
fieldChangesFilter: "تغييرات الحقول",
|
|
944
1261
|
tasksOnly: "المهام فقط",
|
|
945
1262
|
leaveCommentPlaceholder: "اترك تعليقاً… (Ctrl+Enter للإرسال)",
|
|
946
1263
|
noActivity: "لا يوجد نشاط مسجل",
|
|
1264
|
+
activityAccessDenied: "ليس لديك صلاحية عرض نشاط هذا السجل.",
|
|
1265
|
+
commentsAccessDenied: "ليس لديك صلاحية عرض التعليقات على هذا السجل.",
|
|
1266
|
+
// objectui#7149 — the rest of `ActivityTimeline`. The four chip labels the
|
|
1267
|
+
// `detail.*` pack did not already name, and the `formatFieldChange`
|
|
1268
|
+
// sentences, which are assembled in code and so need interpolation holes.
|
|
1269
|
+
allFilter: 'الكل',
|
|
1270
|
+
createsFilter: 'عمليات الإنشاء',
|
|
1271
|
+
deletesFilter: 'عمليات الحذف',
|
|
1272
|
+
statusChangesFilter: 'تغييرات الحالة',
|
|
1273
|
+
activityEmptyValue: '(فارغ)',
|
|
1274
|
+
activityFieldChanged: 'غيّر {{field}} من "{{old}}" إلى "{{new}}"',
|
|
1275
|
+
activityCreated: 'أنشأ هذا السجل',
|
|
1276
|
+
activityDeleted: 'حذف هذا السجل',
|
|
1277
|
+
activityStatusChanged: 'غيّر الحالة إلى "{{value}}"',
|
|
1278
|
+
activityUpdated: 'حدّث السجل',
|
|
947
1279
|
loadMore: "تحميل المزيد",
|
|
948
1280
|
edited: "(معدل)",
|
|
949
1281
|
via: "عبر {{source}}",
|
|
950
1282
|
viewSource: "عرض المصدر",
|
|
951
1283
|
replyCount: "{{count}} رد",
|
|
952
|
-
|
|
1284
|
+
replyCount_zero: "{{count}} رد",
|
|
1285
|
+
replyCount_one: "{{count}} رد",
|
|
1286
|
+
replyCount_two: "ردّان ({{count}})",
|
|
1287
|
+
replyCount_few: "{{count}} ردود",
|
|
1288
|
+
replyCount_many: "{{count}} ردًّا",
|
|
1289
|
+
replyCount_other: "{{count}} رد",
|
|
953
1290
|
replyPlaceholder: "رد…",
|
|
954
1291
|
filterActivity: "تصفية النشاط",
|
|
955
1292
|
openDiscussion: "فتح لوحة المناقشة",
|
|
@@ -964,6 +1301,7 @@ const ar = {
|
|
|
964
1301
|
writeStrippedReadonly: "للقراءة فقط، لذلك لم تُطبَّق: {{fields}}",
|
|
965
1302
|
writeStrippedByState: "غير قابلة للتعديل في الحالة الحالية لهذا السجل، لذلك لم تُطبَّق: {{fields}}",
|
|
966
1303
|
writeStrippedPrimaryKey: "معرّف السجل لا يمكن تغييره عند الحفظ، لذلك لم تُطبَّق: {{fields}}",
|
|
1304
|
+
writeStrippedComputed: "يحسبها الخادم بواسطة صيغة، لذلك لم تُطبَّق القيمة المُرسَلة: {{fields}}",
|
|
967
1305
|
writeStrippedUnknownReason: "لم تُطبَّق من قِبل الخادم: {{fields}}",
|
|
968
1306
|
approvalPendingEditable: "قيد الموافقة · قابل للتعديل",
|
|
969
1307
|
approvalPendingTooltip: "يحتوي هذا السجل على طلب موافقة معلق، لكن هذه الخطوة لا تزال تسمح بالتعديل",
|
|
@@ -985,6 +1323,8 @@ const ar = {
|
|
|
985
1323
|
pathStageLostUpcoming: '{{stage}}، خاسرة، لم يتم الوصول إليها',
|
|
986
1324
|
pathStageWonUpcoming: '{{stage}}، المرحلة الهدف، لم يتم الوصول إليها',
|
|
987
1325
|
linkCopied: "تم نسخ الرابط إلى الحافظة",
|
|
1326
|
+
commentFailed: "لم يُنشر تعليقك. لم يُحفظ أي شيء — يُرجى المحاولة مرة أخرى.",
|
|
1327
|
+
reactionFailed: "لم يُحفظ تفاعلك. يُرجى المحاولة مرة أخرى.",
|
|
988
1328
|
linkCopyFailed: "فشل نسخ الرابط",
|
|
989
1329
|
cancel: "إلغاء",
|
|
990
1330
|
cancelEdit: "تجاهل التغييرات",
|
|
@@ -1014,40 +1354,81 @@ const ar = {
|
|
|
1014
1354
|
sortBy: "ترتيب حسب",
|
|
1015
1355
|
filterPlaceholder: "تصفية…",
|
|
1016
1356
|
highlightFields: "الحقول الرئيسية",
|
|
1357
|
+
highlightsLabel: "الحقول الرئيسية للسجل",
|
|
1017
1358
|
createdBy: "أنشأه",
|
|
1018
1359
|
updatedBy: "حدّثه",
|
|
1019
|
-
// objectui#3863 — base key,
|
|
1020
|
-
//
|
|
1021
|
-
//
|
|
1022
|
-
//
|
|
1023
|
-
//
|
|
1360
|
+
// objectui#3863 — base key, answering only a call made without a count: since
|
|
1361
|
+
// objectui#11432 every ar category has its own slot — `_zero` and `_other`
|
|
1362
|
+
// (100+) singular, `_two` dual with the numeral in parentheses, `_few` (3-10)
|
|
1363
|
+
// the plural agreement, `_many` (11-99) accusative singular. The adjective
|
|
1364
|
+
// agrees with the masculine noun it stands for, as `_one` does.
|
|
1024
1365
|
showEmptyRelated: "+ {{count}} فارغ(فارغة)",
|
|
1366
|
+
showEmptyRelated_zero: "+ {{count}} فارغ",
|
|
1025
1367
|
showEmptyRelated_one: "+ {{count}} فارغ",
|
|
1026
|
-
|
|
1368
|
+
showEmptyRelated_two: "+ فارغان ({{count}})",
|
|
1369
|
+
showEmptyRelated_few: "+ {{count}} فارغة",
|
|
1370
|
+
showEmptyRelated_many: "+ {{count}} فارغًا",
|
|
1371
|
+
showEmptyRelated_other: "+ {{count}} فارغ",
|
|
1027
1372
|
copyEmail: "نسخ البريد الإلكتروني",
|
|
1028
1373
|
copyPhone: "نسخ الهاتف",
|
|
1029
1374
|
copyRecordId: "نسخ معرف السجل",
|
|
1030
1375
|
showEmptyFields: "إظهار {{count}} حقل(حقول) فارغة",
|
|
1376
|
+
showEmptyFields_zero: "إظهار {{count}} حقل فارغ",
|
|
1377
|
+
showEmptyFields_one: "إظهار {{count}} حقل فارغ",
|
|
1378
|
+
showEmptyFields_two: "إظهار حقلين فارغين ({{count}})",
|
|
1379
|
+
showEmptyFields_few: "إظهار {{count}} حقول فارغة",
|
|
1380
|
+
showEmptyFields_many: "إظهار {{count}} حقلًا فارغًا",
|
|
1381
|
+
showEmptyFields_other: "إظهار {{count}} حقل فارغ",
|
|
1031
1382
|
hideEmptyFields: "إخفاء الحقول الفارغة",
|
|
1032
1383
|
noValue: "لا قيمة",
|
|
1384
|
+
unresolvedReference: "مرجع غير مُحلّل: لم يتم تحويل {{value}} إلى مستخدم",
|
|
1385
|
+
unresolvedLookupReference: "مرجع غير مُحلّل: لم يتم تحويل {{value}} إلى سجل في هذه الشاشة",
|
|
1386
|
+
repeaterItemCount: "{{count}} عنصر (عناصر)",
|
|
1387
|
+
repeaterItemCount_zero: "{{count}} عنصر",
|
|
1388
|
+
repeaterItemCount_one: "{{count}} عنصر",
|
|
1389
|
+
repeaterItemCount_two: "عنصران ({{count}})",
|
|
1390
|
+
repeaterItemCount_few: "{{count}} عناصر",
|
|
1391
|
+
repeaterItemCount_many: "{{count}} عنصرًا",
|
|
1392
|
+
repeaterItemCount_other: "{{count}} عنصر",
|
|
1393
|
+
fileCount: "{{count}} ملف (ملفات)",
|
|
1394
|
+
fileCount_zero: "{{count}} ملف",
|
|
1395
|
+
fileCount_one: "{{count}} ملف",
|
|
1396
|
+
fileCount_two: "ملفان ({{count}})",
|
|
1397
|
+
fileCount_few: "{{count}} ملفات",
|
|
1398
|
+
fileCount_many: "{{count}} ملفًا",
|
|
1399
|
+
fileCount_other: "{{count}} ملف",
|
|
1033
1400
|
},
|
|
1034
1401
|
chart: {
|
|
1035
|
-
|
|
1036
|
-
|
|
1402
|
+
loading: "جارٍ تحميل الرسم البياني…",
|
|
1403
|
+
refreshing: "جارٍ التحديث…",
|
|
1037
1404
|
nullCategory: "(غير محدد)",
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
markersCount: "{{count}} علامة",
|
|
1043
|
-
invalidCoordinates: "{{count}} سجل بإحداثيات مفقودة أو غير صالحة مستبعد من الخريطة.",
|
|
1044
|
-
invalidCoordinatesPlural: "{{count}} سجلات بإحداثيات مفقودة أو غير صالحة مستبعدة من الخريطة.",
|
|
1405
|
+
scatterOneMeasure: "المخطط المبعثر يرسم مقياسًا واحدًا فقط. أبقِ سلسلة واحدة:",
|
|
1406
|
+
unconfigured: {
|
|
1407
|
+
noCategoryAxis: "محور فئات الرسم البياني مطلوب — الرسم البياني المرتبط بكائن لا يخترع محورًا. أعلن أحد التالي:",
|
|
1408
|
+
},
|
|
1045
1409
|
},
|
|
1046
1410
|
dashboard: {
|
|
1047
|
-
|
|
1411
|
+
// objectui#7063 — the DEFAULT empty state every dashboard widget renders
|
|
1412
|
+
// when its query SUCCEEDED and returned nothing. It replaced the terse
|
|
1413
|
+
// per-widget `noRows` / `noDataAvailable` fragments at the render site;
|
|
1414
|
+
// objectui#7125 deleted those two keys from all ten packs once nothing
|
|
1415
|
+
// read them. The copy here has to read as a state rather than a failure,
|
|
1416
|
+
// which is why it says the widget loaded. `sourceLabel` carries its own
|
|
1417
|
+
// punctuation so the call site concatenates no separator (see
|
|
1418
|
+
// `WidgetEmptyState`).
|
|
1419
|
+
empty: {
|
|
1420
|
+
title: "لا توجد بيانات بعد",
|
|
1421
|
+
message: "تم تحميل هذه الأداة بنجاح، لكن الاستعلام لم يُرجع أي سجلات بعد.",
|
|
1422
|
+
sourceLabel: "مصدر البيانات:",
|
|
1423
|
+
},
|
|
1048
1424
|
loading: "جارٍ التحميل…",
|
|
1425
|
+
refreshing: "جارٍ التحديث…",
|
|
1426
|
+
refreshAll: "تحديث الكل",
|
|
1427
|
+
refreshDashboard: "تحديث لوحة القيادة",
|
|
1049
1428
|
pickMeasures: "اختر المقاييس (القيم) لأداة مجموعة البيانات هذه.",
|
|
1050
1429
|
datasetUnsupported: "مصدر البيانات هذا لا يدعم استعلامات مجموعات البيانات.",
|
|
1430
|
+
widgetForbiddenTitle: "لا تملك صلاحية الوصول",
|
|
1431
|
+
widgetForbiddenMessage: "ليست لديك صلاحية لعرض البيانات الخاصة بهذه الأداة.",
|
|
1051
1432
|
details: "التفاصيل",
|
|
1052
1433
|
exportCsv: "تصدير CSV",
|
|
1053
1434
|
openInList: "فتح في القائمة",
|
|
@@ -1075,12 +1456,10 @@ const ar = {
|
|
|
1075
1456
|
},
|
|
1076
1457
|
},
|
|
1077
1458
|
addWidget: "إضافة أداة",
|
|
1078
|
-
removeWidget: "إزالة أداة",
|
|
1079
1459
|
editLayout: "تعديل التخطيط",
|
|
1080
1460
|
saveLayout: "حفظ التخطيط",
|
|
1081
1461
|
resetLayout: "إعادة تعيين التخطيط",
|
|
1082
1462
|
total: "الإجمالي",
|
|
1083
|
-
noDataAvailable: "لا بيانات متاحة",
|
|
1084
1463
|
noDataSourceFor: "لا مصدر بيانات لـ",
|
|
1085
1464
|
config: {
|
|
1086
1465
|
breadcrumb: {
|
|
@@ -1202,10 +1581,6 @@ const ar = {
|
|
|
1202
1581
|
appDescription: "الوصف",
|
|
1203
1582
|
appIcon: "الأيقونة",
|
|
1204
1583
|
template: "القالب",
|
|
1205
|
-
layout: "التخطيط",
|
|
1206
|
-
layoutSidebar: "الشريط الجانبي",
|
|
1207
|
-
layoutHeader: "الرأس",
|
|
1208
|
-
layoutEmpty: "فارغ",
|
|
1209
1584
|
selectObjects: "تحديد الكائنات",
|
|
1210
1585
|
searchObjects: "البحث في الكائنات…",
|
|
1211
1586
|
selectAll: "تحديد الكل",
|
|
@@ -1214,7 +1589,6 @@ const ar = {
|
|
|
1214
1589
|
addGroup: "إضافة مجموعة",
|
|
1215
1590
|
addUrl: "إضافة URL",
|
|
1216
1591
|
addSeparator: "إضافة فاصل",
|
|
1217
|
-
noNavItems: "لا توجد عناصر تنقل بعد.",
|
|
1218
1592
|
logoUrl: "Logo URL",
|
|
1219
1593
|
primaryColor: "اللون الأساسي",
|
|
1220
1594
|
faviconUrl: "Favicon URL",
|
|
@@ -1241,13 +1615,12 @@ const ar = {
|
|
|
1241
1615
|
appearance: "المظهر",
|
|
1242
1616
|
rowHeight: "ارتفاع الصف",
|
|
1243
1617
|
livePreview: "معاينة مباشرة",
|
|
1244
|
-
stepBasicDesc: "الاسم والعنوان
|
|
1618
|
+
stepBasicDesc: "الاسم والعنوان والأيقونة",
|
|
1245
1619
|
stepObjectsDesc: "اختيار كائنات الأعمال",
|
|
1246
1620
|
stepNavigationDesc: "بناء شجرة التنقل",
|
|
1247
1621
|
stepBrandingDesc: "الشعار والألوان والأيقونة",
|
|
1248
1622
|
noObjectsFound: "لم يتم العثور على كائنات.",
|
|
1249
1623
|
noNavItemsHint: "لا توجد عناصر تنقل بعد. حدد كائنات في الخطوة السابقة أو أضف عناصر يدويًا.",
|
|
1250
|
-
separator: "فاصل",
|
|
1251
1624
|
separatorLabel: "— فاصل —",
|
|
1252
1625
|
newGroup: "مجموعة جديدة",
|
|
1253
1626
|
newLink: "رابط جديد",
|
|
@@ -1281,6 +1654,7 @@ const ar = {
|
|
|
1281
1654
|
navTypeSeparator: "فاصل",
|
|
1282
1655
|
navTypeAction: "إجراء",
|
|
1283
1656
|
navTypeComponent: "مكوّن",
|
|
1657
|
+
navTypeDoc: "مستند",
|
|
1284
1658
|
navEditIcon: "تعديل الأيقونة",
|
|
1285
1659
|
navToggleVisible: "تبديل الرؤية",
|
|
1286
1660
|
navHidden: "مخفي",
|
|
@@ -1358,11 +1732,8 @@ const ar = {
|
|
|
1358
1732
|
defaultValue: "القيمة الافتراضية",
|
|
1359
1733
|
placeholder: "نص تلميحي",
|
|
1360
1734
|
referenceTo: "مرجع إلى",
|
|
1361
|
-
formula: "صيغة",
|
|
1362
1735
|
options: "خيارات",
|
|
1363
1736
|
addOption: "إضافة خيار",
|
|
1364
|
-
validationRules: "قواعد التحقق",
|
|
1365
|
-
addRule: "إضافة قاعدة",
|
|
1366
1737
|
systemBadge: "النظام",
|
|
1367
1738
|
ungrouped: "عام",
|
|
1368
1739
|
deleteConfirmTitle: "حذف الحقل؟",
|
|
@@ -1381,7 +1752,29 @@ const ar = {
|
|
|
1381
1752
|
},
|
|
1382
1753
|
},
|
|
1383
1754
|
console: {
|
|
1755
|
+
studio: {
|
|
1756
|
+
backToHome: "العودة إلى الرئيسية",
|
|
1757
|
+
},
|
|
1384
1758
|
saveAdvisoryTitle: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1759
|
+
saveAdvisoryTitle_zero: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1760
|
+
saveAdvisoryTitle_one: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1761
|
+
saveAdvisoryTitle_two: "تم الحفظ — أنتج فحص التأليف ملاحظتين إرشاديتين ({{count}})",
|
|
1762
|
+
saveAdvisoryTitle_few: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظات إرشادية",
|
|
1763
|
+
saveAdvisoryTitle_many: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1764
|
+
saveAdvisoryTitle_other: "تم الحفظ — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1765
|
+
publishAdvisoryTitle: "تم النشر — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1766
|
+
publishAdvisoryTitle_zero: "تم النشر — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1767
|
+
publishAdvisoryTitle_one: "تم النشر — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1768
|
+
publishAdvisoryTitle_two: "تم النشر — أنتج فحص التأليف ملاحظتين إرشاديتين ({{count}})",
|
|
1769
|
+
publishAdvisoryTitle_few: "تم النشر — أنتج فحص التأليف {{count}} ملاحظات إرشادية",
|
|
1770
|
+
publishAdvisoryTitle_many: "تم النشر — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1771
|
+
publishAdvisoryTitle_other: "تم النشر — أنتج فحص التأليف {{count}} ملاحظة إرشادية",
|
|
1772
|
+
importMappingsUnavailable: "تعذّر تحميل تعيينات الاستيراد المحفوظة لـ {{object}}",
|
|
1773
|
+
importMappingsRefused: "رفض الخادم هذا الطلب، لذلك فإن هذه القائمة فارغة لأنه تعذّرت قراءتها، لا لأنه لا يوجد شيء مسجَّل. سجّل الدخول مرة أخرى أو اطلب صلاحية الوصول من المسؤول.",
|
|
1774
|
+
importMappingsUnreadable: "هذه القائمة فارغة لأنه تعذّرت قراءتها، لا لأنه لا يوجد شيء مسجَّل. أعد المحاولة، وأبلغ عن المشكلة إذا استمرت.",
|
|
1775
|
+
savedViewsUnavailable: "تعذّر تحميل العروض المحفوظة لـ {{object}}",
|
|
1776
|
+
savedViewsRefused: "رفض الخادم هذا الطلب، لذلك فإن هذه القائمة فارغة لأنه تعذّرت قراءتها، لا لأن هذا الكائن ليس لديه عروض محفوظة. سجّل الدخول مرة أخرى أو اطلب صلاحية الوصول من المسؤول.",
|
|
1777
|
+
savedViewsUnreadable: "هذه القائمة فارغة لأنه تعذّرت قراءتها، لا لأن هذا الكائن ليس لديه عروض محفوظة. أعد المحاولة، وأبلغ عن المشكلة إذا استمرت.",
|
|
1385
1778
|
settingsHub: {
|
|
1386
1779
|
title: "الإعدادات",
|
|
1387
1780
|
subtitle: "اضبط مساحة العمل والتكاملات وأعلام الميزات.",
|
|
@@ -1442,9 +1835,24 @@ const ar = {
|
|
|
1442
1835
|
statusFull: "تم بلوغ الحد",
|
|
1443
1836
|
resetsDaily: "تُعاد التهيئة الليلة",
|
|
1444
1837
|
resetsMonthly: "تُعاد التهيئة في الدورة القادمة",
|
|
1838
|
+
resetsWeeklyDays: "{{count}} يوم(أيام) حتى إعادة التعيين",
|
|
1839
|
+
resetsWeeklyDays_zero: "{{count}} يوم حتى إعادة التعيين",
|
|
1840
|
+
resetsWeeklyDays_one: "{{count}} يوم حتى إعادة التعيين",
|
|
1841
|
+
resetsWeeklyDays_two: "يومان ({{count}}) حتى إعادة التعيين",
|
|
1842
|
+
resetsWeeklyDays_few: "{{count}} أيام حتى إعادة التعيين",
|
|
1843
|
+
resetsWeeklyDays_many: "{{count}} يومًا حتى إعادة التعيين",
|
|
1844
|
+
resetsWeeklyDays_other: "{{count}} يوم حتى إعادة التعيين",
|
|
1845
|
+
resetsWeeklyHours: "{{count}} ساعة(ساعات) حتى إعادة التعيين",
|
|
1846
|
+
resetsWeeklyHours_zero: "{{count}} ساعة حتى إعادة التعيين",
|
|
1847
|
+
resetsWeeklyHours_one: "{{count}} ساعة حتى إعادة التعيين",
|
|
1848
|
+
resetsWeeklyHours_two: "ساعتان ({{count}}) حتى إعادة التعيين",
|
|
1849
|
+
resetsWeeklyHours_few: "{{count}} ساعات حتى إعادة التعيين",
|
|
1850
|
+
resetsWeeklyHours_many: "{{count}} ساعة حتى إعادة التعيين",
|
|
1851
|
+
resetsWeeklyHours_other: "{{count}} ساعة حتى إعادة التعيين",
|
|
1445
1852
|
ctaUpgrade: "قم بالترقية للمتابعة",
|
|
1446
1853
|
ctaTopUp: "أضف أرصدة للمتابعة",
|
|
1447
1854
|
ariaLabel: "استخدام الذكاء الاصطناعي: {{status}}",
|
|
1855
|
+
breakdownTitle: "المستخدَم حتى الآن",
|
|
1448
1856
|
},
|
|
1449
1857
|
workspaceTitle: "مساحة عمل الذكاء الاصطناعي",
|
|
1450
1858
|
workspaceSubtitle: "اسأل وافحص واستأنف المحادثات",
|
|
@@ -1454,6 +1862,31 @@ const ar = {
|
|
|
1454
1862
|
share: "مشاركة",
|
|
1455
1863
|
shareTitle: "مشاركة هذه المحادثة",
|
|
1456
1864
|
shareDisabledTitle: "ابدأ المحادثة لتفعيل المشاركة",
|
|
1865
|
+
buildDoctor: "تشخيص البناء",
|
|
1866
|
+
buildDoctorTitle: "تشخيص البناء — ما الذي طُبِّق فعلًا؟",
|
|
1867
|
+
buildDoctorDisabledTitle: "أرسل رسالة أولًا",
|
|
1868
|
+
buildDoctorDrawer: {
|
|
1869
|
+
description: 'ما ادّعاه الوكيل مقابل ما هو فعّال فعلًا. تشخيص للقراءة فقط.',
|
|
1870
|
+
reconciling: 'جارٍ المطابقة…',
|
|
1871
|
+
notAvailable: 'غير متاح — لم يتم العثور على المحادثة أو ليست لديك صلاحية.',
|
|
1872
|
+
untitled: '(بدون عنوان)',
|
|
1873
|
+
summary: 'الجولات: {{turns}} · الرسائل: {{messages}} · الرموز: {{tokens}} · LLM: {{seconds}} ث',
|
|
1874
|
+
allLive: 'جميع التغييرات التي جرت محاولتها ({{count}}) فعّالة — لم يُفقد شيء.',
|
|
1875
|
+
discrepancies: 'عدد التناقضات: {{count}} — ما قالته المحادثة لا يطابق ما هو فعّال.',
|
|
1876
|
+
orphanedTitle: 'مقترح ولكن لم يُطبَّق أبدًا',
|
|
1877
|
+
orphanedHint: 'بطاقة تأكيد اقترحها الوكيل ولكن لم تطبّقها أي جولة لاحقة — فُقد التغيير بصمت.',
|
|
1878
|
+
missingTitle: 'مُدّعى ولكنه مفقود',
|
|
1879
|
+
missingHint: 'ذكرت نتيجة أداة أنه تم التطبيق، لكن العنصر غير فعّال في sys_metadata.',
|
|
1880
|
+
toolErrorsTitle: 'أخطاء الأدوات',
|
|
1881
|
+
toolErrorsHint: 'استدعاءات الأدوات التي أعادت خطأً أثناء البناء.',
|
|
1882
|
+
verifyTitle: 'فحص البناء (verify_build)',
|
|
1883
|
+
yourApp: 'تطبيقك:',
|
|
1884
|
+
noIssues: 'عدد المشكلات: 0',
|
|
1885
|
+
issueCount: 'عدد المشكلات: {{count}}',
|
|
1886
|
+
platformNoise: 'تم إخفاء {{count}} من نتائج المنصة sys_*',
|
|
1887
|
+
pendingActions: 'الإجراءات المعلّقة',
|
|
1888
|
+
timeline: 'المخطط الزمني ({{count}})',
|
|
1889
|
+
},
|
|
1457
1890
|
newChat: "جديدة",
|
|
1458
1891
|
searchChats: "البحث في المحادثات…",
|
|
1459
1892
|
noChatsYet: "لا توجد محادثات بعد",
|
|
@@ -1483,7 +1916,7 @@ const ar = {
|
|
|
1483
1916
|
empty: {
|
|
1484
1917
|
build: {
|
|
1485
1918
|
title: "الإنشاء بالذكاء الاصطناعي",
|
|
1486
|
-
description: "صف تطبيقًا
|
|
1919
|
+
description: "صف تطبيقًا بلغة بسيطة — سأعدّ مسودة الكائنات والشاشات والبيانات النموذجية، ثم تراجعها وتنشرها.",
|
|
1487
1920
|
},
|
|
1488
1921
|
ask: {
|
|
1489
1922
|
title: "اسأل بياناتك",
|
|
@@ -1492,7 +1925,7 @@ const ar = {
|
|
|
1492
1925
|
editApp: {
|
|
1493
1926
|
title: "تحرير «{{app}}»",
|
|
1494
1927
|
titleGeneric: "تحرير هذا التطبيق",
|
|
1495
|
-
description: "ما الذي تريد تغييره؟ سأعدّل هذا التطبيق في مكانه — إضافة حقل أو كائن أو عرض أو
|
|
1928
|
+
description: "ما الذي تريد تغييره؟ سأعدّل هذا التطبيق في مكانه — إضافة حقل أو كائن أو عرض أو لوحة معلومات، أو تعديل ما هو موجود.",
|
|
1496
1929
|
},
|
|
1497
1930
|
},
|
|
1498
1931
|
clearConversation: "مسح",
|
|
@@ -1545,23 +1978,41 @@ const ar = {
|
|
|
1545
1978
|
recentRecords: "اذكر أحدث 5 سجلات تم إنشاؤها.",
|
|
1546
1979
|
recordCounts: "احسب عدد السجلات لكل كائن.",
|
|
1547
1980
|
},
|
|
1981
|
+
// cloud#1984 — these five chips are the maker's own recommendations, so
|
|
1982
|
+
// they may only ask for what ADR-0112 v1 BUILDS: objects, fields, views
|
|
1983
|
+
// (grid/kanban/calendar/gallery), pages, dashboards and sample data. No
|
|
1984
|
+
// wording that promises autonomous behaviour (alert / remind / notify /
|
|
1985
|
+
// automate / status workflow) — v1 has no flows, actions or schedules, and
|
|
1986
|
+
// the model silently degrades such a request into a board or a filtered
|
|
1987
|
+
// view, so the chip would promise an alert and deliver a page. REVERT to
|
|
1988
|
+
// the automation wording when ADR-0112 v2 re-adds flows and actions.
|
|
1548
1989
|
metadataAssistant: {
|
|
1549
|
-
buildCrm: "أنشئ نظام إدارة علاقات عملاء للمبيعات — عملاء وجهات اتصال
|
|
1550
|
-
buildApp: "أنشئ متتبّع مشاريع — مشاريع ومهام بمسؤولين وتواريخ
|
|
1551
|
-
buildFlow: "صمّم مكتب دعم — تذاكر
|
|
1552
|
-
buildInventory: "أنشئ تطبيق مخزون — منتجات ومستويات مخزون
|
|
1553
|
-
buildRecruiting: "أنشئ متتبّع متقدمين — مرشحون ووظائف شاغرة
|
|
1990
|
+
buildCrm: "أنشئ نظام إدارة علاقات عملاء للمبيعات — عملاء وجهات اتصال وصفقات بحقل للمرحلة، ولوحة معلومات تجمع قيمة الصفقات حسب المرحلة.",
|
|
1991
|
+
buildApp: "أنشئ متتبّع مشاريع — مشاريع ومهام بمسؤولين وتواريخ استحقاق، ولوحة حسب الحالة، وتقويم لتواريخ الاستحقاق.",
|
|
1992
|
+
buildFlow: "صمّم مكتب دعم — تذاكر بحقلي الأولوية والحالة، ولوحة حسب الحالة، وروابط بالعملاء.",
|
|
1993
|
+
buildInventory: "أنشئ تطبيق مخزون — منتجات ومستويات مخزون وموردين، وعرض يصفّي الأصناف دون حد إعادة الطلب.",
|
|
1994
|
+
buildRecruiting: "أنشئ متتبّع متقدمين — مرشحون ووظائف شاغرة وحقل لمرحلة المقابلة، ولوحة حسب المرحلة.",
|
|
1554
1995
|
},
|
|
1555
1996
|
generic: {
|
|
1556
1997
|
help: "بماذا يمكنك مساعدتي؟",
|
|
1557
1998
|
availableObjects: "اذكر كائنات البيانات المتاحة.",
|
|
1558
1999
|
recentActivity: "لخّص نشاطي الأخير.",
|
|
1559
2000
|
},
|
|
2001
|
+
// objectui#7709 — the edit-mode starters, shown when the maker is bound
|
|
2002
|
+
// to an EXISTING app (`?package=`). Same rule as the five above: they
|
|
2003
|
+
// may only ask for what ADR-0112 v1 BUILDS. The fourth chip used to be
|
|
2004
|
+
// `addAutomation` ("an approval, a status flow, or a notification") and
|
|
2005
|
+
// every capability it named is refused by v1 (cloud#1956 / PR #1970), so
|
|
2006
|
+
// it now asks for sample data — `seed` IS on v1's whitelist, and having
|
|
2007
|
+
// no data is what an existing app most often lacks. REVERT: when
|
|
2008
|
+
// ADR-0112 v2 re-adds flows and actions, THIS chip's automation wording
|
|
2009
|
+
// comes back as `addAutomation`; the retired string is pinned for every
|
|
2010
|
+
// pack in `packages/i18n/src/__tests__/makerEditChips-v1-scope-7709.test.ts`.
|
|
1560
2011
|
editApp: {
|
|
1561
2012
|
addField: "أضف حقلًا إلى أحد الكائنات.",
|
|
1562
2013
|
addObject: "أضف كائنًا جديدًا واربطه بكائن موجود.",
|
|
1563
2014
|
addDashboard: "أضف لوحة معلومات للمؤشرات الرئيسية.",
|
|
1564
|
-
|
|
2015
|
+
addSampleData: "املأ الكائنات الحالية ببيانات نموذجية واقعية تصلح للعرض التوضيحي.",
|
|
1565
2016
|
},
|
|
1566
2017
|
},
|
|
1567
2018
|
changesTitle: "تأكيد التغييرات",
|
|
@@ -1636,13 +2087,20 @@ const ar = {
|
|
|
1636
2087
|
},
|
|
1637
2088
|
},
|
|
1638
2089
|
title: "وحدة تحكم ObjectStack",
|
|
1639
|
-
initializing: "
|
|
2090
|
+
initializing: "جارٍ تهيئة التطبيق…",
|
|
1640
2091
|
loadingHint: "قد يستغرق إعداد بيئة جديدة بعض الوقت.",
|
|
1641
2092
|
breadcrumb: {
|
|
1642
2093
|
dashboards: "لوحات المعلومات",
|
|
1643
2094
|
pages: "الصفحات",
|
|
1644
2095
|
reports: "التقارير",
|
|
1645
2096
|
system: "النظام",
|
|
2097
|
+
marketplace: "السوق",
|
|
2098
|
+
settings: 'الإعدادات',
|
|
2099
|
+
apps: 'التطبيقات',
|
|
2100
|
+
profile: 'الملف الشخصي',
|
|
2101
|
+
approvals: 'الموافقات',
|
|
2102
|
+
aiApprovals: 'موافقات الذكاء الاصطناعي',
|
|
2103
|
+
auditLog: 'سجل التدقيق',
|
|
1646
2104
|
},
|
|
1647
2105
|
// objectui#4024 — the single-namespace settings screen. Its sibling
|
|
1648
2106
|
// `settingsHub` above already resolved through this pack; the view was the
|
|
@@ -1661,8 +2119,12 @@ const ar = {
|
|
|
1661
2119
|
discard: "تجاهل",
|
|
1662
2120
|
saveChanges: "حفظ التغييرات",
|
|
1663
2121
|
unsavedCount: "{{count}} تغيير(تغييرات) غير محفوظ",
|
|
2122
|
+
unsavedCount_zero: "{{count}} تغيير غير محفوظ",
|
|
1664
2123
|
unsavedCount_one: "{{count}} تغيير غير محفوظ",
|
|
1665
|
-
|
|
2124
|
+
unsavedCount_two: "تغييران غير محفوظين ({{count}})",
|
|
2125
|
+
unsavedCount_few: "{{count}} تغييرات غير محفوظة",
|
|
2126
|
+
unsavedCount_many: "{{count}} تغييرًا غير محفوظ",
|
|
2127
|
+
unsavedCount_other: "{{count}} تغيير غير محفوظ",
|
|
1666
2128
|
cryptoRefusalTitle: "لا يمكن لهذا النشر تشفير الأسرار",
|
|
1667
2129
|
cryptoRefusalSubjectSuffix: "معلن كمشفَّر، لذلك لم تتم كتابة أي شيء.",
|
|
1668
2130
|
cryptoRefusalNoSubject: "تم رفض القيمة المعلنة كمشفَّرة، لذلك لم تتم كتابة أي شيء.",
|
|
@@ -1670,9 +2132,9 @@ const ar = {
|
|
|
1670
2132
|
cryptoRefusalToastNoSubject: "تعذّر تشفير الأسرار",
|
|
1671
2133
|
},
|
|
1672
2134
|
loadingSteps: {
|
|
1673
|
-
connecting: "
|
|
1674
|
-
loadingConfig: "
|
|
1675
|
-
preparingWorkspace: "
|
|
2135
|
+
connecting: "جارٍ الاتصال بمصدر البيانات",
|
|
2136
|
+
loadingConfig: "جارٍ تحميل الإعدادات",
|
|
2137
|
+
preparingWorkspace: "جارٍ تجهيز مساحة العمل",
|
|
1676
2138
|
},
|
|
1677
2139
|
error: {
|
|
1678
2140
|
connectionFailed: "تعذّر الاتصال بالخادم",
|
|
@@ -1682,7 +2144,7 @@ const ar = {
|
|
|
1682
2144
|
},
|
|
1683
2145
|
actions: {
|
|
1684
2146
|
retry: "إعادة المحاولة",
|
|
1685
|
-
retrying: "
|
|
2147
|
+
retrying: "جارٍ إعادة المحاولة…",
|
|
1686
2148
|
},
|
|
1687
2149
|
serverAction: {
|
|
1688
2150
|
openingTitle: "جارٍ الفتح…",
|
|
@@ -1734,6 +2196,21 @@ const ar = {
|
|
|
1734
2196
|
records: "السجلات",
|
|
1735
2197
|
recentRecords: "شوهد مؤخراً",
|
|
1736
2198
|
},
|
|
2199
|
+
// objectui#9954 — see the `en` pack for what raises each case.
|
|
2200
|
+
readRate: {
|
|
2201
|
+
ratioTitle: 'حجم قراءة غير معتاد في هذه البيئة',
|
|
2202
|
+
ratio: 'تتم قراءة {{ratio}} صف مقابل كل صف مكتوب. تُعلِّم المنصة كل ما يتجاوز {{threshold}}. لا يتم تقييد أو حظر أي شيء؛ هذا تقرير لمراجعة نمط القراءة.',
|
|
2203
|
+
noWritesTitle: 'قراءات بدون أي كتابة في هذه البيئة',
|
|
2204
|
+
noWrites: 'تتم قراءة صفوف دون كتابة أي صف على الإطلاق، لذا لا يوجد حد أعلى لمعدل القراءة. هذه هي أخطر قراءة. تُعلِّم المنصة كل ما يتجاوز {{threshold}}. لا يتم تقييد أو حظر أي شيء؛ هذا تقرير لمراجعة نمط القراءة.',
|
|
2205
|
+
},
|
|
2206
|
+
// objectui#10439 — see the `en` pack for what raises each case.
|
|
2207
|
+
storageUsage: {
|
|
2208
|
+
warningTitle: 'مساحة التخزين توشك على الامتلاء',
|
|
2209
|
+
warning: 'تم استخدام {{used}} ميغابايت من {{limit}} ميغابايت. يتوقف الرفع والاستيراد مؤقتًا عند امتلاء مساحة التخزين.',
|
|
2210
|
+
blockedTitle: 'مساحة التخزين ممتلئة: الرفع والاستيراد متوقفان مؤقتًا',
|
|
2211
|
+
blocked: 'تم استخدام {{used}} ميغابايت من {{limit}} ميغابايت. البيانات الحالية لم تُمس، ولا تزال القراءة والتصدير وتعديل السجلات الفردية تعمل.',
|
|
2212
|
+
upgrade: 'قم بالترقية للمتابعة',
|
|
2213
|
+
},
|
|
1737
2214
|
errors: {
|
|
1738
2215
|
somethingWentWrong: "حدث خطأ ما",
|
|
1739
2216
|
unexpectedError: "حدث خطأ غير متوقع أثناء عرض هذا المحتوى.",
|
|
@@ -1764,6 +2241,7 @@ const ar = {
|
|
|
1764
2241
|
viewNameInvalid: "استخدم أحرفًا إنجليزية صغيرة وأرقامًا وشرطات سفلية؛ وابدأ بحرف أو شرطة سفلية.",
|
|
1765
2242
|
systemViewReadonly: "عرض النظام معرَّف في الكود — للقراءة فقط.",
|
|
1766
2243
|
cannotEditMetaView: "هذا عرض مدمج معرَّف في الكود — لا يمكن تعديله.",
|
|
2244
|
+
viewConfigPermissionDenied: "تنطبق إعدادات العرض على جميع المستخدمين الذين يستخدمون هذا العرض، لذا يتطلب تغييرها إذن «إدارة البيانات الوصفية». اطلب من المسؤول إجراء هذا التغيير.",
|
|
1767
2245
|
cannotDeleteMetaView: "هذا عرض مدمج معرَّف في الكود — لا يمكن حذفه.",
|
|
1768
2246
|
expandToPage: "فتح كصفحة كاملة",
|
|
1769
2247
|
objectNotFound: "الكائن غير موجود",
|
|
@@ -1774,12 +2252,20 @@ const ar = {
|
|
|
1774
2252
|
allRecords: "جميع السجلات",
|
|
1775
2253
|
new: "جديد",
|
|
1776
2254
|
configureView: "تكوين العرض",
|
|
1777
|
-
toolbar: "شريط الأدوات",
|
|
1778
2255
|
toolbarEnabledCount: "{{count}} من {{total}} مفعّل",
|
|
1779
2256
|
searchFields: "البحث في الحقول…",
|
|
1780
2257
|
title: "العنوان",
|
|
1781
2258
|
viewType: "نوع العرض",
|
|
1782
|
-
|
|
2259
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
2260
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
2261
|
+
// without a count.
|
|
2262
|
+
recordCount: "عدد السجلات: {{count}}",
|
|
2263
|
+
recordCount_zero: "{{count}} سجل",
|
|
2264
|
+
recordCount_one: "{{count}} سجل",
|
|
2265
|
+
recordCount_two: "سجلان ({{count}})",
|
|
2266
|
+
recordCount_few: "{{count}} سجلات",
|
|
2267
|
+
recordCount_many: "{{count}} سجلًا",
|
|
2268
|
+
recordCount_other: "{{count}} سجل",
|
|
1783
2269
|
save: "حفظ",
|
|
1784
2270
|
discard: "تجاهل",
|
|
1785
2271
|
createView: "إنشاء عرض",
|
|
@@ -1791,11 +2277,16 @@ const ar = {
|
|
|
1791
2277
|
longitudeField: "حقل خط الطول",
|
|
1792
2278
|
imageField: "حقل الصورة",
|
|
1793
2279
|
selectField: "اختر حقلاً…",
|
|
1794
|
-
groupBy: "تجميع حسب",
|
|
1795
2280
|
endDateField: "حقل تاريخ الانتهاء",
|
|
1796
2281
|
import: "استيراد",
|
|
1797
2282
|
importTitle: "استيراد من CSV",
|
|
1798
2283
|
importedToast: "تم استيراد {{count}} صف(صفوف).",
|
|
2284
|
+
importedToast_zero: "تم استيراد {{count}} صف.",
|
|
2285
|
+
importedToast_one: "تم استيراد {{count}} صف.",
|
|
2286
|
+
importedToast_two: "تم استيراد صفين ({{count}}).",
|
|
2287
|
+
importedToast_few: "تم استيراد {{count}} صفوف.",
|
|
2288
|
+
importedToast_many: "تم استيراد {{count}} صفًا.",
|
|
2289
|
+
importedToast_other: "تم استيراد {{count}} صف.",
|
|
1799
2290
|
importedWithSkipped: "تم استيراد {{ok}} صف(صفوف)؛ تم تخطي {{skipped}}.",
|
|
1800
2291
|
createViewDesc: "اختر نوع العرض وأعطه اسماً. يمكن تغيير جميع الإعدادات لاحقاً.",
|
|
1801
2292
|
cancel: "إلغاء",
|
|
@@ -1804,6 +2295,12 @@ const ar = {
|
|
|
1804
2295
|
deleteViewTitle: "حذف العرض",
|
|
1805
2296
|
deleteViewConfirm: "حذف العرض \"{{name}}\"؟ لا يمكن التراجع عن ذلك.",
|
|
1806
2297
|
bulkDeleteConfirm: "حذف {{count}} سجل(ات) محدد(ة)؟ لا يمكن التراجع عن ذلك.",
|
|
2298
|
+
bulkDeleteConfirm_zero: "حذف {{count}} سجل محدد؟ لا يمكن التراجع عن ذلك.",
|
|
2299
|
+
bulkDeleteConfirm_one: "حذف {{count}} سجل محدد؟ لا يمكن التراجع عن ذلك.",
|
|
2300
|
+
bulkDeleteConfirm_two: "حذف سجلين محددين ({{count}})؟ لا يمكن التراجع عن ذلك.",
|
|
2301
|
+
bulkDeleteConfirm_few: "حذف {{count}} سجلات محددة؟ لا يمكن التراجع عن ذلك.",
|
|
2302
|
+
bulkDeleteConfirm_many: "حذف {{count}} سجلًا محددًا؟ لا يمكن التراجع عن ذلك.",
|
|
2303
|
+
bulkDeleteConfirm_other: "حذف {{count}} سجل محدد؟ لا يمكن التراجع عن ذلك.",
|
|
1807
2304
|
duplicateViewName: "يوجد عرض بهذا الاسم بالفعل.",
|
|
1808
2305
|
viewTypeGrid: "شبكة",
|
|
1809
2306
|
viewTypeGridDesc: "جدول سجلات بأسلوب جدول البيانات.",
|
|
@@ -1840,10 +2337,14 @@ const ar = {
|
|
|
1840
2337
|
chartTypePie: "مخطط دائري",
|
|
1841
2338
|
chartTypeArea: "مخطط مساحة",
|
|
1842
2339
|
chartTypeScatter: "مخطط نقطي",
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
2340
|
+
dataset: "مجموعة البيانات",
|
|
2341
|
+
datasetHelp: "يقرأ المخطط أرقامه من مجموعة البيانات هذه الخاصة بالكائن.",
|
|
2342
|
+
chartMeasure: "المقياس",
|
|
2343
|
+
chartMeasureHelp: "مقياس مجموعة البيانات المعروض على محور القيم.",
|
|
2344
|
+
chartDimension: "البُعد",
|
|
2345
|
+
chartDimensionHelp: "بُعد مجموعة البيانات الذي تُجمَّع القيم حسبه (اختياري).",
|
|
2346
|
+
viewTypeUnavailableDataset: "لا يوفّر هذا الكائن أي مجموعة بيانات للمخطط.",
|
|
2347
|
+
noDatasetMeasure: "لا تعلن مجموعة البيانات هذه عن أي مقياس للمخطط.",
|
|
1847
2348
|
ufTabs: "علامات تبويب",
|
|
1848
2349
|
ufAddField: "+ إضافة حقل فلتر…",
|
|
1849
2350
|
ufShowAllRecords: "إظهار علامة \"جميع السجلات\"",
|
|
@@ -1857,6 +2358,9 @@ const ar = {
|
|
|
1857
2358
|
unpinItem: "إلغاء تثبيت {{name}}",
|
|
1858
2359
|
dragToReorder: "اسحب لإعادة الترتيب",
|
|
1859
2360
|
favorites: "المفضلة",
|
|
2361
|
+
launcherLabel: "مشغّل التطبيقات",
|
|
2362
|
+
menuLabel: "تنقّل التطبيق",
|
|
2363
|
+
menuEmpty: "لا توجد في هذا التطبيق عناصر تنقّل يمكنك فتحها.",
|
|
1860
2364
|
},
|
|
1861
2365
|
},
|
|
1862
2366
|
auth: {
|
|
@@ -1910,6 +2414,8 @@ const ar = {
|
|
|
1910
2414
|
resendOtpCountdownText: "إعادة الإرسال بعد {seconds} ثانية",
|
|
1911
2415
|
usePhoneOtpText: "تسجيل الدخول برمز التحقق",
|
|
1912
2416
|
usePasswordSignInText: "تسجيل الدخول بكلمة المرور بدلاً من ذلك",
|
|
2417
|
+
socialButton: "المتابعة باستخدام {provider}",
|
|
2418
|
+
orText: "أو تابع باستخدام البريد الإلكتروني",
|
|
1913
2419
|
},
|
|
1914
2420
|
register: {
|
|
1915
2421
|
title: "إنشاء حساب",
|
|
@@ -1928,8 +2434,12 @@ const ar = {
|
|
|
1928
2434
|
submittingButton: "جارٍ إنشاء الحساب…",
|
|
1929
2435
|
hasAccountText: "لديك حساب بالفعل؟",
|
|
1930
2436
|
signInText: "تسجيل الدخول",
|
|
2437
|
+
socialButton: "التسجيل باستخدام {provider}",
|
|
2438
|
+
orText: "أو تابع باستخدام البريد الإلكتروني",
|
|
1931
2439
|
errors: {
|
|
1932
2440
|
userExists: "يوجد حساب بهذا البريد الإلكتروني بالفعل. حاول تسجيل الدخول.",
|
|
2441
|
+
selfRegistrationClosed: "التسجيل الذاتي غير متاح في هذه البيئة. اطلب دعوة من المسؤول.",
|
|
2442
|
+
emailDomainNotAllowed: "نطاق هذا البريد الإلكتروني غير مسموح له بالتسجيل هنا. استخدم البريد الإلكتروني لمؤسستك أو اطلب دعوة من المسؤول.",
|
|
1933
2443
|
},
|
|
1934
2444
|
verifyInbox: {
|
|
1935
2445
|
title: "تحقق من صندوق الوارد",
|
|
@@ -2128,6 +2638,15 @@ const ar = {
|
|
|
2128
2638
|
role: "الدور",
|
|
2129
2639
|
save: "حفظ التغييرات",
|
|
2130
2640
|
},
|
|
2641
|
+
language: {
|
|
2642
|
+
title: "اللغة",
|
|
2643
|
+
description: "اللغة المستخدمة في الإشعارات والرسائل المرسلة إليك. أما لغة الواجهة فتُختار بشكل منفصل من قائمة الكرة الأرضية.",
|
|
2644
|
+
label: "اللغة المفضلة",
|
|
2645
|
+
systemDefault: "استخدام الإعداد الافتراضي للنشر",
|
|
2646
|
+
save: "حفظ",
|
|
2647
|
+
saved: "تم تحديث تفضيل اللغة.",
|
|
2648
|
+
readOnly: "يدير المسؤول لغة حسابك.",
|
|
2649
|
+
},
|
|
2131
2650
|
password: {
|
|
2132
2651
|
changeTitle: "تغيير كلمة المرور",
|
|
2133
2652
|
setTitle: "تعيين كلمة مرور محلية",
|
|
@@ -2159,7 +2678,6 @@ const ar = {
|
|
|
2159
2678
|
label: "مساحات العمل",
|
|
2160
2679
|
default: "مساحة العمل الخاصة بي",
|
|
2161
2680
|
switch: "تبديل مساحة العمل",
|
|
2162
|
-
create: "إنشاء مساحة عمل",
|
|
2163
2681
|
createTitle: "إنشاء مساحة عمل",
|
|
2164
2682
|
createDescription: "مساحة العمل هي مساحة مشتركة لفريقك للتعاون.",
|
|
2165
2683
|
createButton: "إنشاء مساحة عمل",
|
|
@@ -2184,7 +2702,6 @@ const ar = {
|
|
|
2184
2702
|
packageManagement: "إدارة الحزم",
|
|
2185
2703
|
searchNavigation: "البحث في التنقل…",
|
|
2186
2704
|
settings: "الإعدادات",
|
|
2187
|
-
help: "المساعدة",
|
|
2188
2705
|
helpTooltip: "المساعدة والوثائق",
|
|
2189
2706
|
activityFeed: "موجز النشاط",
|
|
2190
2707
|
notifications: "الإشعارات",
|
|
@@ -2244,6 +2761,12 @@ const ar = {
|
|
|
2244
2761
|
},
|
|
2245
2762
|
pendingDrafts: {
|
|
2246
2763
|
message: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2764
|
+
message_zero: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2765
|
+
message_one: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2766
|
+
message_two: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2767
|
+
message_few: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2768
|
+
message_many: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2769
|
+
message_other: "لديك {{count}} من التغييرات غير المنشورة — انشرها لتصبح فعّالة.",
|
|
2247
2770
|
cta: "نشر",
|
|
2248
2771
|
publishing: "جارٍ النشر…",
|
|
2249
2772
|
published: "تم النشر! تغييراتك فعّالة الآن.",
|
|
@@ -2258,7 +2781,6 @@ const ar = {
|
|
|
2258
2781
|
capabilityWarn: "فحص التأليف: {{count}} مرجع(مراجع) قدرات لا تشير إلى شيء.",
|
|
2259
2782
|
},
|
|
2260
2783
|
title: "الرئيسية",
|
|
2261
|
-
subtitle: "لوحة تحكم مساحة العمل",
|
|
2262
2784
|
nav: "الرئيسية",
|
|
2263
2785
|
allApps: "جميع التطبيقات",
|
|
2264
2786
|
yourApps: "تطبيقاتك",
|
|
@@ -2270,8 +2792,6 @@ const ar = {
|
|
|
2270
2792
|
empty: "لقد أنجزت كل شيء",
|
|
2271
2793
|
},
|
|
2272
2794
|
loading: "جارٍ تحميل مساحة العمل…",
|
|
2273
|
-
recent: "الأخيرة",
|
|
2274
|
-
starred: "المميزة بنجمة",
|
|
2275
2795
|
welcome: "مرحباً بك في ObjectUI",
|
|
2276
2796
|
welcomeDescription: "ابدأ بإنشاء تطبيقك الأول أو تكوين إعدادات النظام.",
|
|
2277
2797
|
createFirstApp: "أنشئ أول تطبيق لك",
|
|
@@ -2279,8 +2799,6 @@ const ar = {
|
|
|
2279
2799
|
browseMarketplace: "تصفح متجر التطبيقات",
|
|
2280
2800
|
quickActions: {
|
|
2281
2801
|
title: "إجراءات سريعة",
|
|
2282
|
-
createApp: "إنشاء تطبيق",
|
|
2283
|
-
createAppDesc: "ابدأ بتطبيق جديد",
|
|
2284
2802
|
manageObjects: "إدارة الكائنات",
|
|
2285
2803
|
manageObjectsDesc: "تكوين نماذج البيانات",
|
|
2286
2804
|
systemSettings: "إعدادات النظام",
|
|
@@ -2296,18 +2814,15 @@ const ar = {
|
|
|
2296
2814
|
greetingNight: "وردية الليل",
|
|
2297
2815
|
heroTagline: "استمر من حيث توقفت أو اكتشف شيئاً جديداً.",
|
|
2298
2816
|
open: "فتح",
|
|
2299
|
-
stats: {
|
|
2300
|
-
apps: "التطبيقات",
|
|
2301
|
-
starred: "المميزة",
|
|
2302
|
-
recent: "الأخيرة",
|
|
2303
|
-
},
|
|
2304
2817
|
recentApps: {
|
|
2305
2818
|
title: "فُتح مؤخراً",
|
|
2306
2819
|
itemType: {
|
|
2307
2820
|
object: "كائن",
|
|
2308
2821
|
dashboard: "لوحة تحكم",
|
|
2309
2822
|
page: "صفحة",
|
|
2823
|
+
report: "تقرير",
|
|
2310
2824
|
record: "سجل",
|
|
2825
|
+
metadata: "البيانات الوصفية",
|
|
2311
2826
|
},
|
|
2312
2827
|
},
|
|
2313
2828
|
starredApps: {
|
|
@@ -2329,7 +2844,6 @@ const ar = {
|
|
|
2329
2844
|
organizations: "المؤسسات",
|
|
2330
2845
|
roles: "الأدوار",
|
|
2331
2846
|
configuration: "التهيئة",
|
|
2332
|
-
createApp: "إنشاء تطبيق",
|
|
2333
2847
|
administration: "الإدارة",
|
|
2334
2848
|
datasources: "مصادر البيانات",
|
|
2335
2849
|
documentation: "الوثائق",
|
|
@@ -2354,6 +2868,7 @@ const ar = {
|
|
|
2354
2868
|
typeUpdate: "تحديث",
|
|
2355
2869
|
typeDelete: "حذف",
|
|
2356
2870
|
typeComment: "تعليق",
|
|
2871
|
+
typeSystem: "النظام",
|
|
2357
2872
|
relativeJustNow: "الآن",
|
|
2358
2873
|
relativeSecondsAgo: "منذ {{count}} ث",
|
|
2359
2874
|
relativeMinutesAgo: "منذ {{count}} د",
|
|
@@ -2375,8 +2890,22 @@ const ar = {
|
|
|
2375
2890
|
placeholder: "ابحث في الكائنات، لوحات التحكم، الصفحات، التقارير…",
|
|
2376
2891
|
inputAriaLabel: "ابحث في الكائنات، لوحات التحكم، الصفحات، التقارير",
|
|
2377
2892
|
resultsCount: "{{count}} نتيجة لـ \"{{query}}\"",
|
|
2378
|
-
|
|
2379
|
-
|
|
2893
|
+
resultsCount_zero: "{{count}} نتيجة لـ \"{{query}}\"",
|
|
2894
|
+
resultsCount_one: "{{count}} نتيجة لـ \"{{query}}\"",
|
|
2895
|
+
resultsCount_two: "نتيجتان لـ \"{{query}}\" ({{count}})",
|
|
2896
|
+
resultsCount_few: "{{count}} نتائج لـ \"{{query}}\"",
|
|
2897
|
+
resultsCount_many: "{{count}} نتيجة لـ \"{{query}}\"",
|
|
2898
|
+
resultsCount_other: "{{count}} نتيجة لـ \"{{query}}\"",
|
|
2899
|
+
// objectui#11445 — a count family: each of the six CLDR slots carries its
|
|
2900
|
+
// own noun form. The base key, a count-invariant form, answers a call made
|
|
2901
|
+
// without a count.
|
|
2902
|
+
itemsAvailable: "عدد العناصر المتاحة: {{count}}",
|
|
2903
|
+
itemsAvailable_zero: "{{count}} عنصر متاح",
|
|
2904
|
+
itemsAvailable_one: "{{count}} عنصر متاح",
|
|
2905
|
+
itemsAvailable_two: "عنصران متاحان ({{count}})",
|
|
2906
|
+
itemsAvailable_few: "{{count}} عناصر متاحة",
|
|
2907
|
+
itemsAvailable_many: "{{count}} عنصرًا متاحًا",
|
|
2908
|
+
itemsAvailable_other: "{{count}} عنصر متاح",
|
|
2380
2909
|
noResults: "لم يتم العثور على نتائج",
|
|
2381
2910
|
noResultsHint: "جرب تعديل مصطلحات البحث",
|
|
2382
2911
|
typeObjects: "الكائنات",
|
|
@@ -2401,7 +2930,11 @@ const ar = {
|
|
|
2401
2930
|
noAppsConfigured: "لا تطبيقات مُهيأة",
|
|
2402
2931
|
noAppsConfiguredDescription: "لا تطبيقات مسجلة. أنشئ تطبيقك الأول أو زر إعدادات النظام.",
|
|
2403
2932
|
appNotAvailable: "التطبيق غير متاح",
|
|
2404
|
-
appNotAvailableDescription: "هذا التطبيق غير متاح
|
|
2933
|
+
appNotAvailableDescription: "هذا التطبيق غير متاح — أعد المحاولة بعد لحظات.",
|
|
2934
|
+
appNotFound: "تعذّر فتح هذا التطبيق",
|
|
2935
|
+
appNotFoundDescription: "لم يُرجع الخادم هذا التطبيق لحسابك.",
|
|
2936
|
+
appUnreachable: "تعذّر الوصول إلى الخادم",
|
|
2937
|
+
appUnreachableDescription: "تعذّر التحقق من هذا التطبيق. أعد المحاولة بعد لحظات.",
|
|
2405
2938
|
appAccessDenied: "ليس لديك حق الوصول إلى هذا التطبيق",
|
|
2406
2939
|
appAccessDeniedDescription: "هذا التطبيق موجود، لكن حسابك غير مخوَّل بفتحه. اطلب من المسؤول منحك حق الوصول.",
|
|
2407
2940
|
appAccessDeniedHome: "العودة إلى الرئيسية",
|
|
@@ -2416,11 +2949,11 @@ const ar = {
|
|
|
2416
2949
|
description: "يرجى إدخال المعلومات المطلوبة للمتابعة.",
|
|
2417
2950
|
selectPlaceholder: "تحديد {{label}}",
|
|
2418
2951
|
requiredError: "{{label}} مطلوب",
|
|
2952
|
+
unresolvedParam: 'تعذّر عرض هذه المَعلمة: الحقل الذي تستند إليه غير موجود في بيانات تعريف الكائن، لذا يتعذّر إنشاء عنصر التحكم المطلوب. اطلب من المسؤول تصحيح تعريف الإجراء.',
|
|
2953
|
+
carryOverHint: 'يُنقل دون تغيير (للقراءة فقط)',
|
|
2419
2954
|
cancel: "إلغاء",
|
|
2420
2955
|
confirm: "تأكيد",
|
|
2421
2956
|
uploading: "جارٍ الرفع…",
|
|
2422
|
-
defaultActionTitle: "إجراء",
|
|
2423
|
-
ok: "موافق",
|
|
2424
2957
|
lookupPlaceholder: "معرف السجل لـ {{label}}",
|
|
2425
2958
|
lookupHelpText: "لم يتم تكوين كائن مرجعي لهذه المعلمة، لذا فإن أداة اختيار السجلات غير متاحة. أدخل معرف السجل، أو اطلب من المسؤول تصحيح معلمة الإجراء.",
|
|
2426
2959
|
},
|
|
@@ -2429,11 +2962,6 @@ const ar = {
|
|
|
2429
2962
|
confirm: "متابعة",
|
|
2430
2963
|
cancel: "إلغاء",
|
|
2431
2964
|
},
|
|
2432
|
-
rowAction: {
|
|
2433
|
-
openMenu: "فتح القائمة",
|
|
2434
|
-
edit: "تعديل",
|
|
2435
|
-
delete: "حذف",
|
|
2436
|
-
},
|
|
2437
2965
|
navigationSync: {
|
|
2438
2966
|
addedPage: "تم تحديث التنقل: تمت إضافة الصفحة \"{{name}}\"",
|
|
2439
2967
|
addedDashboard: "تم تحديث التنقل: تمت إضافة لوحة التحكم \"{{name}}\"",
|
|
@@ -2454,6 +2982,12 @@ const ar = {
|
|
|
2454
2982
|
noRecordId: "لم يتم توفير معرف سجل",
|
|
2455
2983
|
deleteConfirm: "حذف هذا السجل؟",
|
|
2456
2984
|
bulkDeleteSuccess: "تم حذف {{count}} سجل(ات) {{label}}",
|
|
2985
|
+
bulkDeleteSuccess_zero: "تم حذف {{count}} من سجلات {{label}}",
|
|
2986
|
+
bulkDeleteSuccess_one: "تم حذف {{count}} من سجلات {{label}}",
|
|
2987
|
+
bulkDeleteSuccess_two: "تم حذف {{count}} من سجلات {{label}}",
|
|
2988
|
+
bulkDeleteSuccess_few: "تم حذف {{count}} من سجلات {{label}}",
|
|
2989
|
+
bulkDeleteSuccess_many: "تم حذف {{count}} من سجلات {{label}}",
|
|
2990
|
+
bulkDeleteSuccess_other: "تم حذف {{count}} من سجلات {{label}}",
|
|
2457
2991
|
bulkDeletePartial: "تم حذف {{succeeded}}، فشل {{failed}}",
|
|
2458
2992
|
},
|
|
2459
2993
|
objectViewActions: {
|
|
@@ -2465,15 +2999,6 @@ const ar = {
|
|
|
2465
2999
|
exportFailed: "فشل التصدير: {{message}}",
|
|
2466
3000
|
forecastSoon: "عرض التوقعات قادم قريباً",
|
|
2467
3001
|
},
|
|
2468
|
-
recordDetail: {
|
|
2469
|
-
viewersTooltip: "المستخدمون يشاهدون هذا السجل الآن",
|
|
2470
|
-
},
|
|
2471
|
-
cellRender: {
|
|
2472
|
-
empty: "فارغ",
|
|
2473
|
-
yes: "نعم",
|
|
2474
|
-
no: "لا",
|
|
2475
|
-
systemFields: "النظام",
|
|
2476
|
-
},
|
|
2477
3002
|
user: {
|
|
2478
3003
|
profile: "الملف الشخصي",
|
|
2479
3004
|
settings: "الإعدادات",
|
|
@@ -2663,18 +3188,49 @@ const ar = {
|
|
|
2663
3188
|
regionLabel: "الإشعارات",
|
|
2664
3189
|
groupCount: "{{count}} من الإشعارات",
|
|
2665
3190
|
groupUnread: "{{count}} غير مقروء",
|
|
3191
|
+
groupUnread_zero: "غير المقروءة: {{count}}",
|
|
3192
|
+
groupUnread_one: "غير المقروءة: {{count}}",
|
|
3193
|
+
groupUnread_two: "غير المقروءة: {{count}}",
|
|
3194
|
+
groupUnread_few: "غير المقروءة: {{count}}",
|
|
3195
|
+
groupUnread_many: "غير المقروءة: {{count}}",
|
|
3196
|
+
groupUnread_other: "غير المقروءة: {{count}}",
|
|
2666
3197
|
groupMarkRead: "تعليم كمقروء",
|
|
2667
3198
|
groupMarkReadTitle: "تعليم كل هذا النوع كمقروء",
|
|
2668
3199
|
empty: "لا توجد إشعارات",
|
|
2669
3200
|
markAllRead: "تعليم الكل كمقروء",
|
|
2670
3201
|
viewAll: "عرض جميع الإشعارات",
|
|
2671
3202
|
approvalsPending: "{{count}} موافقات معلقة",
|
|
3203
|
+
approvalsPending_zero: "{{count}} موافقة معلقة",
|
|
3204
|
+
approvalsPending_one: "{{count}} موافقة معلقة",
|
|
3205
|
+
approvalsPending_two: "موافقتان معلقتان ({{count}})",
|
|
3206
|
+
approvalsPending_few: "{{count}} موافقات معلقة",
|
|
3207
|
+
approvalsPending_many: "{{count}} موافقة معلقة",
|
|
3208
|
+
approvalsPending_other: "{{count}} موافقة معلقة",
|
|
2672
3209
|
viewApprovals: "عرض الموافقات",
|
|
2673
3210
|
noPendingApprovals: "لا توجد موافقات معلقة",
|
|
2674
3211
|
openApprovalsInbox: "فتح صندوق الموافقات",
|
|
2675
3212
|
badgeTotal: "{{total}} إجمالاً",
|
|
2676
3213
|
badgeNotifications: "{{unread}} إشعارات",
|
|
2677
3214
|
badgeApprovals: "{{approvals}} موافقات معلقة",
|
|
3215
|
+
arrivalMany: "{{count}} رسائل جديدة",
|
|
3216
|
+
arrivalMany_zero: "{{count}} رسالة جديدة",
|
|
3217
|
+
arrivalMany_one: "{{count}} رسالة جديدة",
|
|
3218
|
+
arrivalMany_two: "رسالتان جديدتان ({{count}})",
|
|
3219
|
+
arrivalMany_few: "{{count}} رسائل جديدة",
|
|
3220
|
+
arrivalMany_many: "{{count}} رسالة جديدة",
|
|
3221
|
+
arrivalMany_other: "{{count}} رسالة جديدة",
|
|
3222
|
+
arrivalRepeats: "{{count}} رسائل جديدة في هذا الموضوع",
|
|
3223
|
+
arrivalRepeats_zero: "{{count}} رسالة جديدة في هذا الموضوع",
|
|
3224
|
+
arrivalRepeats_one: "{{count}} رسالة جديدة في هذا الموضوع",
|
|
3225
|
+
arrivalRepeats_two: "رسالتان جديدتان ({{count}}) في هذا الموضوع",
|
|
3226
|
+
arrivalRepeats_few: "{{count}} رسائل جديدة في هذا الموضوع",
|
|
3227
|
+
arrivalRepeats_many: "{{count}} رسالة جديدة في هذا الموضوع",
|
|
3228
|
+
arrivalRepeats_other: "{{count}} رسالة جديدة في هذا الموضوع",
|
|
3229
|
+
arrivalOpen: "عرض",
|
|
3230
|
+
toastEnabled: "تنبيهات داخل التطبيق",
|
|
3231
|
+
desktopEnabled: "إشعارات سطح المكتب",
|
|
3232
|
+
desktopBlocked: "محظور. اسمح بالإشعارات لهذا الموقع من إعدادات المتصفح.",
|
|
3233
|
+
desktopUnsupported: "هذا المتصفح لا يدعم إشعارات سطح المكتب.",
|
|
2678
3234
|
emptyUnread: "كل شيء مقروء",
|
|
2679
3235
|
filterUnread: "غير مقروء",
|
|
2680
3236
|
filterAll: "الكل",
|
|
@@ -2688,12 +3244,14 @@ const ar = {
|
|
|
2688
3244
|
thankYouTitle: "شكراً!",
|
|
2689
3245
|
thankYouMessage: "تم استلام إرسالك بنجاح.",
|
|
2690
3246
|
redirecting: "إعادة توجيه خلال {{seconds}} ثانية(ثوانٍ)…",
|
|
3247
|
+
redirectPending: "جارٍ إعادة التوجيه…",
|
|
2691
3248
|
unavailableTitle: "النموذج غير متاح",
|
|
2692
3249
|
unavailableDescription: "لا يوجد نموذج عام متاح على هذا الرابط. تأكد من تمكين المشاركة المجهولة للعرض الأساسي.",
|
|
2693
3250
|
tryDemo: "تجربة العرض التوضيحي",
|
|
2694
3251
|
retry: "إعادة المحاولة",
|
|
2695
3252
|
loading: "جارٍ تحميل النموذج…",
|
|
2696
3253
|
requiredHint: "* حقل مطلوب",
|
|
3254
|
+
requiredFields: "الحقول المطلوبة: {{fields}}",
|
|
2697
3255
|
consentLabelDefault: "أوافق على سياسة الخصوصية وأعطي موافقتي على معالجة بياناتي لهذا الطلب.",
|
|
2698
3256
|
consentLink: "سياسة الخصوصية",
|
|
2699
3257
|
consentRequired: "يرجى قبول سياسة الخصوصية للمتابعة.",
|
|
@@ -2744,6 +3302,12 @@ const ar = {
|
|
|
2744
3302
|
noImportableFields: "لا تحتوي هذه الكائن على حقول قابلة للاستيراد.",
|
|
2745
3303
|
schemaReadFailed: "تعذّرت قراءة مخطط الكائن.",
|
|
2746
3304
|
imported: "تم استيراد {{count}} صف إلى {{object}}.",
|
|
3305
|
+
imported_zero: "تم استيراد {{count}} صف إلى {{object}}.",
|
|
3306
|
+
imported_one: "تم استيراد {{count}} صف إلى {{object}}.",
|
|
3307
|
+
imported_two: "تم استيراد صفين ({{count}}) إلى {{object}}.",
|
|
3308
|
+
imported_few: "تم استيراد {{count}} صفوف إلى {{object}}.",
|
|
3309
|
+
imported_many: "تم استيراد {{count}} صفًا إلى {{object}}.",
|
|
3310
|
+
imported_other: "تم استيراد {{count}} صف إلى {{object}}.",
|
|
2747
3311
|
importFrom: "استيراد الصفوف الفعلية من",
|
|
2748
3312
|
into: "إلى",
|
|
2749
3313
|
opening: "جارٍ الفتح…",
|
|
@@ -2757,6 +3321,84 @@ const ar = {
|
|
|
2757
3321
|
openProduction: "فتح بيئة الإنتاج",
|
|
2758
3322
|
manageEnvironments: "إدارة البيئات",
|
|
2759
3323
|
},
|
|
3324
|
+
cloudPlanStatus: {
|
|
3325
|
+
current: "الخطة الحالية",
|
|
3326
|
+
},
|
|
3327
|
+
ai: {
|
|
3328
|
+
nlQuery: {
|
|
3329
|
+
placeholder: "اطرح سؤالًا حول بياناتك…",
|
|
3330
|
+
ask: "اسأل",
|
|
3331
|
+
results: "النتائج",
|
|
3332
|
+
match: "نسبة التطابق: {{percent}}",
|
|
3333
|
+
simulatedSummary: "نتائج: {{query}}",
|
|
3334
|
+
noResults: "لم يتم العثور على سجلات مطابقة",
|
|
3335
|
+
recentQueries: "الاستعلامات الأخيرة",
|
|
3336
|
+
},
|
|
3337
|
+
formAssist: {
|
|
3338
|
+
title: "اقتراحات الذكاء الاصطناعي",
|
|
3339
|
+
suggestionCount: "عدد الاقتراحات: {{count}}",
|
|
3340
|
+
suggestionCount_zero: "{{count}} اقتراح",
|
|
3341
|
+
suggestionCount_one: "{{count}} اقتراح",
|
|
3342
|
+
suggestionCount_two: "اقتراحان ({{count}})",
|
|
3343
|
+
suggestionCount_few: "{{count}} اقتراحات",
|
|
3344
|
+
suggestionCount_many: "{{count}} اقتراحًا",
|
|
3345
|
+
suggestionCount_other: "{{count}} اقتراح",
|
|
3346
|
+
applyAll: "تطبيق الكل",
|
|
3347
|
+
confidence: "الثقة: {{percent}}",
|
|
3348
|
+
appliedCount: "عدد الاقتراحات المطبّقة: {{count}}",
|
|
3349
|
+
appliedCount_zero: "تم تطبيق {{count}} اقتراح",
|
|
3350
|
+
appliedCount_one: "تم تطبيق {{count}} اقتراح",
|
|
3351
|
+
appliedCount_two: "تم تطبيق اقتراحين ({{count}})",
|
|
3352
|
+
appliedCount_few: "تم تطبيق {{count}} اقتراحات",
|
|
3353
|
+
appliedCount_many: "تم تطبيق {{count}} اقتراحًا",
|
|
3354
|
+
appliedCount_other: "تم تطبيق {{count}} اقتراح",
|
|
3355
|
+
},
|
|
3356
|
+
recommendations: {
|
|
3357
|
+
title: "التوصيات",
|
|
3358
|
+
generating: "جارٍ إنشاء التوصيات…",
|
|
3359
|
+
empty: "لا توجد توصيات متاحة",
|
|
3360
|
+
},
|
|
3361
|
+
},
|
|
3362
|
+
aiApprovals: {
|
|
3363
|
+
title: "موافقات الذكاء الاصطناعي",
|
|
3364
|
+
description: "إجراءات اقترحها وكيل ذكاء اصطناعي وتحتاج إلى مراجعة بشرية قبل تنفيذها.",
|
|
3365
|
+
tabPending: "قيد الانتظار",
|
|
3366
|
+
tabDecided: "تم البت فيها",
|
|
3367
|
+
tabAll: "الكل",
|
|
3368
|
+
statusPending: "قيد الانتظار",
|
|
3369
|
+
statusApproved: "تمت الموافقة",
|
|
3370
|
+
statusExecuted: "تم التنفيذ",
|
|
3371
|
+
statusFailed: "فشل",
|
|
3372
|
+
statusRejected: "مرفوض",
|
|
3373
|
+
colTool: "الأداة",
|
|
3374
|
+
colAction: "الإجراء",
|
|
3375
|
+
colObject: "الكائن",
|
|
3376
|
+
colStatus: "الحالة",
|
|
3377
|
+
colProposed: "وقت الاقتراح",
|
|
3378
|
+
colDecision: "القرار",
|
|
3379
|
+
emptyTitle: "لا توجد إجراءات في الانتظار",
|
|
3380
|
+
emptyDescription: "عندما يقترح الذكاء الاصطناعي إجراءً حساسًا سيظهر هنا للمراجعة.",
|
|
3381
|
+
view: "عرض",
|
|
3382
|
+
approve: "موافقة",
|
|
3383
|
+
reject: "رفض",
|
|
3384
|
+
working: "جارٍ التنفيذ…",
|
|
3385
|
+
approveAndExecute: "الموافقة والتنفيذ",
|
|
3386
|
+
outcomeApprove: "موافقة على {{id}}: {{message}}",
|
|
3387
|
+
outcomeReject: "رفض {{id}}: {{message}}",
|
|
3388
|
+
outcomeExecuteFailed: "فشل الإجراء أثناء التنفيذ",
|
|
3389
|
+
drawerFallbackTitle: "إجراء قيد الانتظار",
|
|
3390
|
+
drawerSubtitle: "الأداة {{tool}} على {{object}}",
|
|
3391
|
+
fieldProposedBy: "اقترحه",
|
|
3392
|
+
fieldDecidedBy: "قرّره",
|
|
3393
|
+
fieldConversation: "المحادثة",
|
|
3394
|
+
fieldToolInput: "مدخلات الأداة",
|
|
3395
|
+
fieldResult: "النتيجة",
|
|
3396
|
+
fieldError: "خطأ",
|
|
3397
|
+
fieldRejectionReason: "سبب الرفض",
|
|
3398
|
+
rejectTitle: "هل تريد رفض هذا الإجراء؟",
|
|
3399
|
+
rejectBody: "يُعاد السبب إلى الذكاء الاصطناعي ليعدّل ردّه التالي.",
|
|
3400
|
+
rejectPlaceholder: "سبب اختياري (مثال: «معرّف السجل غير صحيح — يرجى التأكيد مع المستخدم أولاً.»)",
|
|
3401
|
+
},
|
|
2760
3402
|
aiModelStatus: {
|
|
2761
3403
|
summary: "يستخدم الإنشاء / السؤال {{conversational}} ({{conversationalSource}})؛ ويستخدم الإخراج المهيكل {{structured}} ({{structuredSource}}).",
|
|
2762
3404
|
summaryRouting: "سياسة التوجيه: الخطط المجانية ← {{free}}، الخطط المدفوعة ← {{paid}}.",
|
|
@@ -2774,6 +3416,123 @@ const ar = {
|
|
|
2774
3416
|
sourceInherits: "مثل build/ask",
|
|
2775
3417
|
sourcePinned: "مثبّت بواسطة {{source}}",
|
|
2776
3418
|
},
|
|
3419
|
+
// objectui#7254 — the AI copilot's tool cards. Three families, all of them
|
|
3420
|
+
// English-only until this landed while every other string on the same screen
|
|
3421
|
+
// was translated:
|
|
3422
|
+
//
|
|
3423
|
+
// `tool.*` — one entry per PLATFORM-PROVIDED tool name
|
|
3424
|
+
// (@objectstack/spec `PLATFORM_TOOLS_BY_PACKAGE`, the
|
|
3425
|
+
// closed registry those runtimes are conformance-tested
|
|
3426
|
+
// against). `humanizeToolName` looks each up as
|
|
3427
|
+
// `chatbot.tool.<tool_name>` and falls back to its English
|
|
3428
|
+
// title-caser for a custom / third-party tool, so a name
|
|
3429
|
+
// missing here is degraded, never broken. The `en` values
|
|
3430
|
+
// are deliberately EQUAL to what that title-caser produces:
|
|
3431
|
+
// adding the key must not silently reword the English UI.
|
|
3432
|
+
// `toolState.*` — the card-header badge + activity-chip vocabulary. ONE
|
|
3433
|
+
// set for both surfaces (they used to carry separate
|
|
3434
|
+
// tables and disagreed on casing).
|
|
3435
|
+
// `plan.*` — the "N objects · N views · N dashboards" strip. Plural
|
|
3436
|
+
// FAMILIES: one slot per CLDR category the pack's language
|
|
3437
|
+
// selects (objectui#11432), plus the base key for a call
|
|
3438
|
+
// made without a count. `all-locales-key-parity.test.ts`
|
|
3439
|
+
// derives the required slots from `Intl.PluralRules`.
|
|
3440
|
+
//
|
|
3441
|
+
// objectui#7481 — five `tool.*` entries are NEWER than the registry above:
|
|
3442
|
+
// `get_authoring_rules` (cloud#1837), `load_tools`, `open_record`, `test_flow`
|
|
3443
|
+
// and `toggle_flow` are registered by cloud `service-ai-studio` but the pinned
|
|
3444
|
+
// `@objectstack/spec` snapshot does not list them yet. They are kept here on
|
|
3445
|
+
// purpose: a step label the user reads must not wait on a pin bump. When the
|
|
3446
|
+
// pin advances, `chatbotToolLabels-locale-parity-7481` starts checking them
|
|
3447
|
+
// against the registry instead of against its own hand-held list.
|
|
3448
|
+
chatbot: {
|
|
3449
|
+
tool: {
|
|
3450
|
+
aggregate_data: "تجميع البيانات",
|
|
3451
|
+
get_record: "جلب السجل",
|
|
3452
|
+
query_data: "الاستعلام عن البيانات",
|
|
3453
|
+
query_records: "الاستعلام عن السجلات",
|
|
3454
|
+
search_knowledge: "البحث في قاعدة المعرفة",
|
|
3455
|
+
visualize_data: "إنشاء رسم بياني",
|
|
3456
|
+
add_field: "إضافة حقل",
|
|
3457
|
+
apply_blueprint: "بناء التطبيق",
|
|
3458
|
+
apply_edit: "تطبيق التغييرات",
|
|
3459
|
+
create_metadata: "إنشاء بيانات وصفية",
|
|
3460
|
+
create_object: "إنشاء كائن",
|
|
3461
|
+
create_package: "إنشاء حزمة",
|
|
3462
|
+
create_seed: "توليد بيانات تجريبية",
|
|
3463
|
+
delete_field: "حذف حقل",
|
|
3464
|
+
describe_metadata: "عرض البيانات الوصفية",
|
|
3465
|
+
describe_object: "عرض بنية الكائن",
|
|
3466
|
+
get_active_package: "جلب الحزمة النشطة",
|
|
3467
|
+
get_authoring_rules: "قراءة قواعد التأليف",
|
|
3468
|
+
get_metadata_schema: "جلب مخطط البيانات الوصفية",
|
|
3469
|
+
get_package: "جلب الحزمة",
|
|
3470
|
+
list_metadata: "سرد البيانات الوصفية",
|
|
3471
|
+
list_objects: "سرد الكائنات",
|
|
3472
|
+
list_packages: "سرد الحزم",
|
|
3473
|
+
load_tools: "تحميل الأدوات",
|
|
3474
|
+
modify_field: "تعديل حقل",
|
|
3475
|
+
open_record: "فتح السجل",
|
|
3476
|
+
propose_blueprint: "تصميم خطة التطبيق",
|
|
3477
|
+
set_active_package: "تبديل الحزمة النشطة",
|
|
3478
|
+
suggest_builder: "اقتراح طريقة البناء",
|
|
3479
|
+
test_flow: "اختبار التدفق",
|
|
3480
|
+
todo_write: "تدوين المهام",
|
|
3481
|
+
toggle_flow: "تفعيل أو تعطيل التدفق",
|
|
3482
|
+
update_metadata: "تحديث البيانات الوصفية",
|
|
3483
|
+
validate_expression: "التحقق من التعبير",
|
|
3484
|
+
verify_build: "التحقق من البناء",
|
|
3485
|
+
},
|
|
3486
|
+
toolState: {
|
|
3487
|
+
agentActivity: "نشاط الوكيل",
|
|
3488
|
+
pending: "قيد الانتظار",
|
|
3489
|
+
running: "قيد التنفيذ",
|
|
3490
|
+
awaitingApproval: "بانتظار الموافقة",
|
|
3491
|
+
responded: "تمت الاستجابة",
|
|
3492
|
+
completed: "مكتمل",
|
|
3493
|
+
error: "خطأ",
|
|
3494
|
+
denied: "مرفوض",
|
|
3495
|
+
failed: "فشل",
|
|
3496
|
+
},
|
|
3497
|
+
plan: {
|
|
3498
|
+
countObjects: "{{count}} كائنات",
|
|
3499
|
+
countObjects_zero: "{{count}} كائن",
|
|
3500
|
+
countObjects_one: "{{count}} كائن",
|
|
3501
|
+
countObjects_two: "كائنان ({{count}})",
|
|
3502
|
+
countObjects_few: "{{count}} كائنات",
|
|
3503
|
+
countObjects_many: "{{count}} كائنًا",
|
|
3504
|
+
countObjects_other: "{{count}} كائن",
|
|
3505
|
+
countViews: "{{count}} طرق عرض",
|
|
3506
|
+
countViews_zero: "{{count}} طريقة عرض",
|
|
3507
|
+
countViews_one: "{{count}} طريقة عرض",
|
|
3508
|
+
countViews_two: "طريقتا عرض ({{count}})",
|
|
3509
|
+
countViews_few: "{{count}} طرق عرض",
|
|
3510
|
+
countViews_many: "{{count}} طريقة عرض",
|
|
3511
|
+
countViews_other: "{{count}} طريقة عرض",
|
|
3512
|
+
countDashboards: "{{count}} لوحات معلومات",
|
|
3513
|
+
countDashboards_zero: "{{count}} لوحة معلومات",
|
|
3514
|
+
countDashboards_one: "{{count}} لوحة معلومات",
|
|
3515
|
+
countDashboards_two: "لوحتا معلومات ({{count}})",
|
|
3516
|
+
countDashboards_few: "{{count}} لوحات معلومات",
|
|
3517
|
+
countDashboards_many: "{{count}} لوحة معلومات",
|
|
3518
|
+
countDashboards_other: "{{count}} لوحة معلومات",
|
|
3519
|
+
countSeedData: "بيانات تجريبية",
|
|
3520
|
+
},
|
|
3521
|
+
build: {
|
|
3522
|
+
building: "جارٍ إنشاء {{app}}…",
|
|
3523
|
+
built: "تم إنشاء {{app}}",
|
|
3524
|
+
appFallback: "تطبيقك",
|
|
3525
|
+
addingSampleData: "جارٍ إضافة بيانات تجريبية",
|
|
3526
|
+
group: {
|
|
3527
|
+
object: "الكائنات",
|
|
3528
|
+
view: "طرق العرض",
|
|
3529
|
+
dashboard: "لوحات المعلومات",
|
|
3530
|
+
app: "التطبيق",
|
|
3531
|
+
seed: "بيانات تجريبية",
|
|
3532
|
+
},
|
|
3533
|
+
moreArtifacts: "+{{n}} أخرى",
|
|
3534
|
+
},
|
|
3535
|
+
},
|
|
2777
3536
|
chatbotError: {
|
|
2778
3537
|
title: "فشل الرد",
|
|
2779
3538
|
fallbackDetail: "حدث خطأ ما. يرجى المحاولة مرة أخرى.",
|
|
@@ -2854,7 +3613,7 @@ const ar = {
|
|
|
2854
3613
|
},
|
|
2855
3614
|
title: "سوق التطبيقات",
|
|
2856
3615
|
subtitle: "استعرض التطبيقات المعتمدة المنشورة في كتالوج ObjectStack. انقر على تطبيق لرؤية التفاصيل وتثبيته في أحد بيئاتك.",
|
|
2857
|
-
searchPlaceholder:
|
|
3616
|
+
searchPlaceholder: 'ابحث عن التطبيقات بالاسم أو معرف التطبيق…',
|
|
2858
3617
|
searchAria: "البحث في تطبيقات السوق",
|
|
2859
3618
|
installed: "مثبت",
|
|
2860
3619
|
installedCount: "مثبت ({{count}})",
|
|
@@ -2902,10 +3661,23 @@ const ar = {
|
|
|
2902
3661
|
purgeSampleData: 'حذف البيانات التجريبية',
|
|
2903
3662
|
purgeConfirm: 'حذف جميع السجلات التجريبية التي أنشأتها هذه الحزمة؟ لن تتأثر السجلات التي أضافها المستخدم.',
|
|
2904
3663
|
purgeSuccess: 'تم حذف {{count}} سجل تجريبي.',
|
|
3664
|
+
purgeSuccess_zero: 'تم حذف {{count}} سجل تجريبي.',
|
|
3665
|
+
purgeSuccess_one: 'تم حذف {{count}} سجل تجريبي.',
|
|
3666
|
+
purgeSuccess_two: 'تم حذف سجلين تجريبيين ({{count}}).',
|
|
3667
|
+
purgeSuccess_few: 'تم حذف {{count}} سجلات تجريبية.',
|
|
3668
|
+
purgeSuccess_many: 'تم حذف {{count}} سجلًا تجريبيًا.',
|
|
3669
|
+
purgeSuccess_other: 'تم حذف {{count}} سجل تجريبي.',
|
|
2905
3670
|
purgeNoData: 'لا توجد سجلات تجريبية للحذف.',
|
|
2906
3671
|
reseedQueued: 'ستتم إعادة تحميل البيانات التجريبية عند الوصول التالي إلى البيئة.',
|
|
2907
3672
|
reseedLocalSuccess: 'تمت إعادة تحميل البيانات التجريبية: {{inserted}} مضافة، {{updated}} محدثة.',
|
|
2908
3673
|
reseedPartialErrors: '(فشل في كتابة {{count}} سجل)',
|
|
3674
|
+
reseedPartialErrors_zero: '(فشل في كتابة {{count}} سجل)',
|
|
3675
|
+
reseedPartialErrors_one: '(فشل في كتابة {{count}} سجل)',
|
|
3676
|
+
reseedPartialErrors_two: '(فشل في كتابة سجلين: {{count}})',
|
|
3677
|
+
reseedPartialErrors_few: '(فشل في كتابة {{count}} سجلات)',
|
|
3678
|
+
reseedPartialErrors_many: '(فشل في كتابة {{count}} سجلًا)',
|
|
3679
|
+
reseedPartialErrors_other: '(فشل في كتابة {{count}} سجل)',
|
|
3680
|
+
sampleDataKernelUnavailable: 'لا يحتوي مستوى التحكم هذا على نواة بيئة، لذا لا يمكن إعادة تحميل البيانات التجريبية أو حذفها من هنا. نفّذ ذلك من وقت التشغيل الخاص بالبيئة نفسها.',
|
|
2909
3681
|
updateAvailable: 'يتوفر تحديث',
|
|
2910
3682
|
},
|
|
2911
3683
|
action: {
|
|
@@ -2958,7 +3730,8 @@ const ar = {
|
|
|
2958
3730
|
reviewed: "تمت المراجعة والموافقة",
|
|
2959
3731
|
unreviewed: "لم تتم المراجعة بعد",
|
|
2960
3732
|
signed: "موقَّع",
|
|
2961
|
-
grantsIntro: "
|
|
3733
|
+
grantsIntro: "تطلب هذه الحزمة:",
|
|
3734
|
+
notEnforced: "تُسجَّل هذه القائمة عند التثبيت ويُعاد تأكيدها إذا طلب إصدار لاحق المزيد، لكن بيئة التشغيل لا تقصر الحزمة على هذه القائمة بعد.",
|
|
2962
3735
|
services: "خدمات المنصة",
|
|
2963
3736
|
hooks: "خطافات دورة الحياة",
|
|
2964
3737
|
network: "الوصول إلى الشبكة",
|
|
@@ -2997,30 +3770,27 @@ const ar = {
|
|
|
2997
3770
|
storage: "التخزين",
|
|
2998
3771
|
other: "أخرى",
|
|
2999
3772
|
},
|
|
3000
|
-
pricing: {
|
|
3001
|
-
free: "مجاني",
|
|
3002
|
-
freemium: "مجاني جزئياً",
|
|
3003
|
-
paid: "مدفوع",
|
|
3004
|
-
subscription: "اشتراك",
|
|
3005
|
-
"usage-based": "حسب الاستخدام",
|
|
3006
|
-
"contact-sales": "تواصل مع المبيعات",
|
|
3007
|
-
},
|
|
3008
3773
|
relativeTime: {
|
|
3009
3774
|
today: "اليوم",
|
|
3010
3775
|
daysAgo: "منذ {{count}} ي",
|
|
3011
3776
|
monthsAgo: "منذ {{count}} شهر(أشهر)",
|
|
3777
|
+
monthsAgo_zero: "منذ {{count}} شهر",
|
|
3778
|
+
monthsAgo_one: "منذ {{count}} شهر",
|
|
3779
|
+
monthsAgo_two: "منذ شهرين ({{count}})",
|
|
3780
|
+
monthsAgo_few: "منذ {{count}} أشهر",
|
|
3781
|
+
monthsAgo_many: "منذ {{count}} شهرًا",
|
|
3782
|
+
monthsAgo_other: "منذ {{count}} شهر",
|
|
3012
3783
|
yearsAgo: "منذ {{count}} سنة(سنوات)",
|
|
3784
|
+
yearsAgo_zero: "منذ {{count}} سنة",
|
|
3785
|
+
yearsAgo_one: "منذ {{count}} سنة",
|
|
3786
|
+
yearsAgo_two: "منذ سنتين ({{count}})",
|
|
3787
|
+
yearsAgo_few: "منذ {{count}} سنوات",
|
|
3788
|
+
yearsAgo_many: "منذ {{count}} سنة",
|
|
3789
|
+
yearsAgo_other: "منذ {{count}} سنة",
|
|
3013
3790
|
},
|
|
3014
3791
|
},
|
|
3015
|
-
approvals: {
|
|
3016
|
-
approve: 'الموافقة',
|
|
3017
|
-
reject: 'رفض',
|
|
3018
|
-
comment: 'تعليق (اختياري)',
|
|
3019
|
-
approveSuccess: 'تمت الموافقة',
|
|
3020
|
-
rejectSuccess: 'تم الرفض',
|
|
3021
|
-
rejectConfirm: 'هل تريد رفض طلب الموافقة هذا؟',
|
|
3022
|
-
},
|
|
3023
3792
|
approvalsInbox: {
|
|
3793
|
+
recordUnresolvable: 'لا يمكن فتح هذا السجل',
|
|
3024
3794
|
loadMore: 'تحميل المزيد',
|
|
3025
3795
|
loadingMore: 'جارٍ التحميل…',
|
|
3026
3796
|
loadedOf: 'تم تحميل {{loaded}} من {{total}}',
|
|
@@ -3039,6 +3809,12 @@ const ar = {
|
|
|
3039
3809
|
requestInfoSent: 'أُعيد إلى مقدم الطلب لاستكمال المعلومات',
|
|
3040
3810
|
remindBtn: 'تذكير',
|
|
3041
3811
|
remindSuccess: 'أُرسل تذكير إلى {{count}} موافق',
|
|
3812
|
+
remindSuccess_zero: 'أُرسل تذكير إلى {{count}} موافق',
|
|
3813
|
+
remindSuccess_one: 'أُرسل تذكير إلى {{count}} موافق',
|
|
3814
|
+
remindSuccess_two: 'أُرسل تذكير إلى موافقَين ({{count}})',
|
|
3815
|
+
remindSuccess_few: 'أُرسل تذكير إلى {{count}} موافقين',
|
|
3816
|
+
remindSuccess_many: 'أُرسل تذكير إلى {{count}} موافقًا',
|
|
3817
|
+
remindSuccess_other: 'أُرسل تذكير إلى {{count}} موافق',
|
|
3042
3818
|
remindThrottled: 'أُرسل تذكير مؤخرًا — حاول لاحقًا.',
|
|
3043
3819
|
replyPlaceholder: 'الرد على هذا الطلب…',
|
|
3044
3820
|
slaRemaining: 'SLA المتبقي {{dur}}',
|
|
@@ -3055,6 +3831,12 @@ const ar = {
|
|
|
3055
3831
|
progressApprovals: 'الموافقات — {{got}} من {{need}}',
|
|
3056
3832
|
progressGroups: 'تقدم التوقيعات — {{got}} من {{need}} مجموعات',
|
|
3057
3833
|
progressEligible: '{{count}} معتمِد مؤهل',
|
|
3834
|
+
progressEligible_zero: '{{count}} معتمِد مؤهل',
|
|
3835
|
+
progressEligible_one: '{{count}} معتمِد مؤهل',
|
|
3836
|
+
progressEligible_two: 'معتمِدان مؤهلان ({{count}})',
|
|
3837
|
+
progressEligible_few: '{{count}} معتمِدين مؤهلين',
|
|
3838
|
+
progressEligible_many: '{{count}} معتمِدًا مؤهلًا',
|
|
3839
|
+
progressEligible_other: '{{count}} معتمِد مؤهل',
|
|
3058
3840
|
progressBar: 'تقدم القرار',
|
|
3059
3841
|
declaredActions: 'الإجراءات',
|
|
3060
3842
|
attachmentChip: 'مرفق',
|
|
@@ -3086,6 +3868,12 @@ const ar = {
|
|
|
3086
3868
|
filterCount: '{{shown}} من {{total}}',
|
|
3087
3869
|
selected: 'محدد',
|
|
3088
3870
|
actionableCount: '({{count}} قابلة للتنفيذ)',
|
|
3871
|
+
actionableCount_zero: '({{count}} قابلة للتنفيذ)',
|
|
3872
|
+
actionableCount_one: '({{count}} قابلة للتنفيذ)',
|
|
3873
|
+
actionableCount_two: '({{count}} قابلة للتنفيذ)',
|
|
3874
|
+
actionableCount_few: '({{count}} قابلة للتنفيذ)',
|
|
3875
|
+
actionableCount_many: '({{count}} قابلة للتنفيذ)',
|
|
3876
|
+
actionableCount_other: '({{count}} قابلة للتنفيذ)',
|
|
3089
3877
|
selectAll: 'تحديد الكل',
|
|
3090
3878
|
selectRow: 'تحديد الطلب',
|
|
3091
3879
|
colRequest: 'الطلب',
|
|
@@ -3159,11 +3947,35 @@ const ar = {
|
|
|
3159
3947
|
approveN: 'الموافقة على {{count}}',
|
|
3160
3948
|
rejectN: 'رفض {{count}}',
|
|
3161
3949
|
bulkApproveTitle: 'الموافقة على {{count}} طلبات؟',
|
|
3950
|
+
bulkApproveTitle_zero: 'الموافقة على {{count}} طلب؟',
|
|
3951
|
+
bulkApproveTitle_one: 'الموافقة على {{count}} طلب؟',
|
|
3952
|
+
bulkApproveTitle_two: 'الموافقة على طلبين ({{count}})؟',
|
|
3953
|
+
bulkApproveTitle_few: 'الموافقة على {{count}} طلبات؟',
|
|
3954
|
+
bulkApproveTitle_many: 'الموافقة على {{count}} طلبًا؟',
|
|
3955
|
+
bulkApproveTitle_other: 'الموافقة على {{count}} طلب؟',
|
|
3162
3956
|
bulkApproveBody: 'ستتم الموافقة على كل طلب بهويتك ويتابع التدفق عبر فرع الموافقة.',
|
|
3163
3957
|
bulkRejectTitle: 'رفض {{count}} طلبات؟',
|
|
3958
|
+
bulkRejectTitle_zero: 'رفض {{count}} طلب؟',
|
|
3959
|
+
bulkRejectTitle_one: 'رفض {{count}} طلب؟',
|
|
3960
|
+
bulkRejectTitle_two: 'رفض طلبين ({{count}})؟',
|
|
3961
|
+
bulkRejectTitle_few: 'رفض {{count}} طلبات؟',
|
|
3962
|
+
bulkRejectTitle_many: 'رفض {{count}} طلبًا؟',
|
|
3963
|
+
bulkRejectTitle_other: 'رفض {{count}} طلب؟',
|
|
3164
3964
|
bulkRejectBody: 'سيتم رفض الطلبات المحددة وإخطار مقدميها.',
|
|
3165
3965
|
bulkApproved: 'تمت الموافقة على {{count}} طلبات',
|
|
3966
|
+
bulkApproved_zero: 'تمت الموافقة على {{count}} طلب',
|
|
3967
|
+
bulkApproved_one: 'تمت الموافقة على {{count}} طلب',
|
|
3968
|
+
bulkApproved_two: 'تمت الموافقة على طلبين ({{count}})',
|
|
3969
|
+
bulkApproved_few: 'تمت الموافقة على {{count}} طلبات',
|
|
3970
|
+
bulkApproved_many: 'تمت الموافقة على {{count}} طلبًا',
|
|
3971
|
+
bulkApproved_other: 'تمت الموافقة على {{count}} طلب',
|
|
3166
3972
|
bulkRejected: 'تم رفض {{count}} طلبات',
|
|
3973
|
+
bulkRejected_zero: 'تم رفض {{count}} طلب',
|
|
3974
|
+
bulkRejected_one: 'تم رفض {{count}} طلب',
|
|
3975
|
+
bulkRejected_two: 'تم رفض طلبين ({{count}})',
|
|
3976
|
+
bulkRejected_few: 'تم رفض {{count}} طلبات',
|
|
3977
|
+
bulkRejected_many: 'تم رفض {{count}} طلبًا',
|
|
3978
|
+
bulkRejected_other: 'تم رفض {{count}} طلب',
|
|
3167
3979
|
bulkPartial: 'نجح {{ok}}، فشل {{fail}}: {{which}}',
|
|
3168
3980
|
rejectOneTitle: 'رفض "{{title}}"؟',
|
|
3169
3981
|
rejectOneBody: 'سيتم رفض الطلب وإخطار مقدمه.',
|
|
@@ -3188,8 +4000,26 @@ const ar = {
|
|
|
3188
4000
|
alreadyDecided: 'تم البت في هذا الطلب بالفعل. حدّث القائمة.',
|
|
3189
4001
|
justNow: 'الآن',
|
|
3190
4002
|
minutesAgo: 'قبل {{count}} دقيقة',
|
|
4003
|
+
minutesAgo_zero: 'قبل {{count}} دقيقة',
|
|
4004
|
+
minutesAgo_one: 'قبل {{count}} دقيقة',
|
|
4005
|
+
minutesAgo_two: 'قبل دقيقتين ({{count}})',
|
|
4006
|
+
minutesAgo_few: 'قبل {{count}} دقائق',
|
|
4007
|
+
minutesAgo_many: 'قبل {{count}} دقيقة',
|
|
4008
|
+
minutesAgo_other: 'قبل {{count}} دقيقة',
|
|
3191
4009
|
hoursAgo: 'قبل {{count}} ساعة',
|
|
4010
|
+
hoursAgo_zero: 'قبل {{count}} ساعة',
|
|
4011
|
+
hoursAgo_one: 'قبل {{count}} ساعة',
|
|
4012
|
+
hoursAgo_two: 'قبل ساعتين ({{count}})',
|
|
4013
|
+
hoursAgo_few: 'قبل {{count}} ساعات',
|
|
4014
|
+
hoursAgo_many: 'قبل {{count}} ساعة',
|
|
4015
|
+
hoursAgo_other: 'قبل {{count}} ساعة',
|
|
3192
4016
|
daysAgo: 'قبل {{count}} يوم',
|
|
4017
|
+
daysAgo_zero: 'قبل {{count}} يوم',
|
|
4018
|
+
daysAgo_one: 'قبل {{count}} يوم',
|
|
4019
|
+
daysAgo_two: 'قبل يومين ({{count}})',
|
|
4020
|
+
daysAgo_few: 'قبل {{count}} أيام',
|
|
4021
|
+
daysAgo_many: 'قبل {{count}} يومًا',
|
|
4022
|
+
daysAgo_other: 'قبل {{count}} يوم',
|
|
3193
4023
|
},
|
|
3194
4024
|
preview: {
|
|
3195
4025
|
empty: {
|
|
@@ -3224,11 +4054,23 @@ const ar = {
|
|
|
3224
4054
|
detailNone: 'لم يتم اكتشاف اختلافات — المسودة مطابقة للنسخة المنشورة.',
|
|
3225
4055
|
detailChangedKeys: 'تغييرات أخرى:',
|
|
3226
4056
|
confirmNote: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4057
|
+
confirmNote_zero: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4058
|
+
confirmNote_one: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4059
|
+
confirmNote_two: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4060
|
+
confirmNote_few: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4061
|
+
confirmNote_many: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
4062
|
+
confirmNote_other: 'النشر يُصدر كل المسودات المعلقة ({{count}}) لهذه الحزمة دفعة واحدة.',
|
|
3227
4063
|
publishConfirm: 'نشر الكل',
|
|
3228
|
-
// [
|
|
4064
|
+
// [`7a90afdf9`] Pre-publish security-posture findings, shown next to
|
|
3229
4065
|
// the confirm button so a refusal the door would issue is read BEFORE
|
|
3230
4066
|
// the click rather than as a toast after the batch rolled back.
|
|
3231
4067
|
securityBlockTitle: 'سيتم رفض النشر — {{count}} عنصر (عناصر) بحاجة إلى قرار أولاً',
|
|
4068
|
+
securityBlockTitle_zero: 'سيتم رفض النشر — {{count}} عنصر بحاجة إلى قرار أولاً',
|
|
4069
|
+
securityBlockTitle_one: 'سيتم رفض النشر — {{count}} عنصر بحاجة إلى قرار أولاً',
|
|
4070
|
+
securityBlockTitle_two: 'سيتم رفض النشر — عنصران ({{count}}) بحاجة إلى قرار أولاً',
|
|
4071
|
+
securityBlockTitle_few: 'سيتم رفض النشر — {{count}} عناصر بحاجة إلى قرار أولاً',
|
|
4072
|
+
securityBlockTitle_many: 'سيتم رفض النشر — {{count}} عنصرًا بحاجة إلى قرار أولاً',
|
|
4073
|
+
securityBlockTitle_other: 'سيتم رفض النشر — {{count}} عنصر بحاجة إلى قرار أولاً',
|
|
3232
4074
|
securityBlockWhere: 'أصلحه في الكائن ضمن الإعدادات ← مشاركة السجلات، ثم انشر مرة أخرى.',
|
|
3233
4075
|
},
|
|
3234
4076
|
// ADR-0045 — the materialized-but-unlisted app banner
|
|
@@ -3253,7 +4095,7 @@ const ar = {
|
|
|
3253
4095
|
revertLabel: 'تم التراجع عن تغيير',
|
|
3254
4096
|
applyLabel: 'تغيير من البناء',
|
|
3255
4097
|
revert: 'تراجع',
|
|
3256
|
-
items: '
|
|
4098
|
+
items: 'العناصر: {{count}}',
|
|
3257
4099
|
revertAction: 'تراجع',
|
|
3258
4100
|
reverted: 'تم التراجع — أُلغي التغيير.',
|
|
3259
4101
|
revertFailed: 'فشل التراجع',
|
|
@@ -3282,25 +4124,25 @@ const ar = {
|
|
|
3282
4124
|
rangeEnd: "إلى",
|
|
3283
4125
|
operators: {
|
|
3284
4126
|
equals: "يساوي",
|
|
3285
|
-
|
|
4127
|
+
not_equals: "لا يساوي",
|
|
3286
4128
|
contains: "يحتوي",
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
4129
|
+
icontains: "يحتوي (مع تجاهل حالة الأحرف)",
|
|
4130
|
+
not_contains: "لا يحتوي",
|
|
4131
|
+
is_empty: "فارغ",
|
|
4132
|
+
is_not_empty: "غير فارغ",
|
|
4133
|
+
greater_than: "أكبر من",
|
|
4134
|
+
less_than: "أصغر من",
|
|
4135
|
+
greater_than_or_equal: "أكبر من أو يساوي",
|
|
4136
|
+
less_than_or_equal: "أصغر من أو يساوي",
|
|
3295
4137
|
before: "قبل",
|
|
3296
4138
|
after: "بعد",
|
|
3297
4139
|
between: "بين",
|
|
3298
4140
|
in: "ضمن",
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3303
|
-
|
|
4141
|
+
not_in: "ليس ضمن",
|
|
4142
|
+
starts_with: "يبدأ بـ",
|
|
4143
|
+
ends_with: "ينتهي بـ",
|
|
4144
|
+
is_null: "يساوي null",
|
|
4145
|
+
is_not_null: "لا يساوي null",
|
|
3304
4146
|
exists: "محدد",
|
|
3305
4147
|
notExists: "غير محدد",
|
|
3306
4148
|
},
|
|
@@ -3315,8 +4157,16 @@ const ar = {
|
|
|
3315
4157
|
removeSort: "إزالة الترتيب",
|
|
3316
4158
|
},
|
|
3317
4159
|
collaboration: {
|
|
3318
|
-
commentCount
|
|
3319
|
-
|
|
4160
|
+
// objectui#11445 — `commentCount` and `reactionCount` below are count
|
|
4161
|
+
// families: each of the six CLDR slots carries its own noun form, and the
|
|
4162
|
+
// base key, a count label, answers a call made without a count.
|
|
4163
|
+
commentCount: "عدد التعليقات: {{count}}",
|
|
4164
|
+
commentCount_zero: "{{count}} تعليق",
|
|
4165
|
+
commentCount_one: "{{count}} تعليق",
|
|
4166
|
+
commentCount_two: "تعليقان ({{count}})",
|
|
4167
|
+
commentCount_few: "{{count}} تعليقات",
|
|
4168
|
+
commentCount_many: "{{count}} تعليقًا",
|
|
4169
|
+
commentCount_other: "{{count}} تعليق",
|
|
3320
4170
|
resolvedSuffix: " · تم الحل",
|
|
3321
4171
|
sortComments: "ترتيب التعليقات",
|
|
3322
4172
|
sortOldest: "الأقدم أولاً",
|
|
@@ -3325,11 +4175,34 @@ const ar = {
|
|
|
3325
4175
|
reopen: "إعادة الفتح",
|
|
3326
4176
|
justNow: "الآن",
|
|
3327
4177
|
minutesAgo: "قبل {{count}} دقيقة",
|
|
4178
|
+
minutesAgo_zero: "قبل {{count}} دقيقة",
|
|
4179
|
+
minutesAgo_one: "قبل {{count}} دقيقة",
|
|
4180
|
+
minutesAgo_two: "قبل دقيقتين ({{count}})",
|
|
4181
|
+
minutesAgo_few: "قبل {{count}} دقائق",
|
|
4182
|
+
minutesAgo_many: "قبل {{count}} دقيقة",
|
|
4183
|
+
minutesAgo_other: "قبل {{count}} دقيقة",
|
|
3328
4184
|
hoursAgo: "قبل {{count}} ساعة",
|
|
4185
|
+
hoursAgo_zero: "قبل {{count}} ساعة",
|
|
4186
|
+
hoursAgo_one: "قبل {{count}} ساعة",
|
|
4187
|
+
hoursAgo_two: "قبل ساعتين ({{count}})",
|
|
4188
|
+
hoursAgo_few: "قبل {{count}} ساعات",
|
|
4189
|
+
hoursAgo_many: "قبل {{count}} ساعة",
|
|
4190
|
+
hoursAgo_other: "قبل {{count}} ساعة",
|
|
3329
4191
|
daysAgo: "قبل {{count}} يوم",
|
|
4192
|
+
daysAgo_zero: "قبل {{count}} يوم",
|
|
4193
|
+
daysAgo_one: "قبل {{count}} يوم",
|
|
4194
|
+
daysAgo_two: "قبل يومين ({{count}})",
|
|
4195
|
+
daysAgo_few: "قبل {{count}} أيام",
|
|
4196
|
+
daysAgo_many: "قبل {{count}} يومًا",
|
|
4197
|
+
daysAgo_other: "قبل {{count}} يوم",
|
|
3330
4198
|
edited: "(تم التعديل)",
|
|
3331
|
-
reactionCount: "{{count}}
|
|
3332
|
-
|
|
4199
|
+
reactionCount: "عدد التفاعلات: {{count}}",
|
|
4200
|
+
reactionCount_zero: "{{count}} تفاعل",
|
|
4201
|
+
reactionCount_one: "{{count}} تفاعل",
|
|
4202
|
+
reactionCount_two: "تفاعلان ({{count}})",
|
|
4203
|
+
reactionCount_few: "{{count}} تفاعلات",
|
|
4204
|
+
reactionCount_many: "{{count}} تفاعلًا",
|
|
4205
|
+
reactionCount_other: "{{count}} تفاعل",
|
|
3333
4206
|
addThumbsUp: "إضافة إعجاب",
|
|
3334
4207
|
reply: "رد",
|
|
3335
4208
|
reactThumbsUp: "التفاعل بإعجاب",
|
|
@@ -3339,10 +4212,22 @@ const ar = {
|
|
|
3339
4212
|
replyingToComment: "الرد على التعليق…",
|
|
3340
4213
|
commentPlaceholder: "أضف تعليقًا… (استخدم @ للإشارة)",
|
|
3341
4214
|
send: "إرسال",
|
|
3342
|
-
|
|
3343
|
-
|
|
3344
|
-
|
|
3345
|
-
|
|
4215
|
+
// objectui#11445 — the presence stack's name and its overflow badge are
|
|
4216
|
+
// count families too.
|
|
4217
|
+
presentUserCount: "عدد المستخدمين المتواجدين: {{count}}",
|
|
4218
|
+
presentUserCount_zero: "{{count}} مستخدم متواجد",
|
|
4219
|
+
presentUserCount_one: "{{count}} مستخدم متواجد",
|
|
4220
|
+
presentUserCount_two: "مستخدمان متواجدان ({{count}})",
|
|
4221
|
+
presentUserCount_few: "{{count}} مستخدمين متواجدين",
|
|
4222
|
+
presentUserCount_many: "{{count}} مستخدمًا متواجدًا",
|
|
4223
|
+
presentUserCount_other: "{{count}} مستخدم متواجد",
|
|
4224
|
+
moreUserCount: "عدد المستخدمين الآخرين: {{count}}",
|
|
4225
|
+
moreUserCount_zero: "{{count}} مستخدم آخر",
|
|
4226
|
+
moreUserCount_one: "{{count}} مستخدم آخر",
|
|
4227
|
+
moreUserCount_two: "مستخدمان آخران ({{count}})",
|
|
4228
|
+
moreUserCount_few: "{{count}} مستخدمين آخرين",
|
|
4229
|
+
moreUserCount_many: "{{count}} مستخدمًا آخر",
|
|
4230
|
+
moreUserCount_other: "{{count}} مستخدم آخر",
|
|
3346
4231
|
userStatusTitle: "{{name}} ({{status}})",
|
|
3347
4232
|
statusActive: "نشط",
|
|
3348
4233
|
statusIdle: "خامل",
|
|
@@ -3350,6 +4235,11 @@ const ar = {
|
|
|
3350
4235
|
},
|
|
3351
4236
|
wizard: {
|
|
3352
4237
|
missingRequired: "يرجى إكمال الحقول المطلوبة: {{fields}}",
|
|
4238
|
+
back: "رجوع",
|
|
4239
|
+
submitting: "جارٍ الإرسال…",
|
|
4240
|
+
stepFallback: "الخطوة {{n}}",
|
|
4241
|
+
progressLabel: "التقدم",
|
|
4242
|
+
emptyStep: "لا توجد حقول مهيأة لهذه الخطوة",
|
|
3353
4243
|
},
|
|
3354
4244
|
flowRunner: {
|
|
3355
4245
|
title: 'إدخال',
|
|
@@ -3407,5 +4297,49 @@ const ar = {
|
|
|
3407
4297
|
bulkOperationFailed: "فشلت العملية الجماعية: {{reason}}",
|
|
3408
4298
|
},
|
|
3409
4299
|
},
|
|
4300
|
+
// objectui#6301 — الإعداد › أتمتة الحزم (ADR-0126 §7.4). المصطلحات كما في
|
|
4301
|
+
// بقية الحزمة: `common.package` = الحزمة، و`flowRunner.completed` = التدفق،
|
|
4302
|
+
// وعلامات الاقتباس «…». ⛔ لا توجد صياغة عن الأصل أو الانحراف في هذه
|
|
4303
|
+
// المجموعة (§9).
|
|
4304
|
+
packagedAutomation: {
|
|
4305
|
+
title: "أتمتة الحزم",
|
|
4306
|
+
subtitle: "تدفقات وإجراءات تأتي مع الحزم المثبّتة. يمكنك إيقاف أي منها في هذا النشر، أو استنساخ تدفق باسم جديد لتخصيصه. التحرير يتم في Studio.",
|
|
4307
|
+
refresh: "تحديث",
|
|
4308
|
+
flowsHeading: "تدفقات الحزم",
|
|
4309
|
+
actionsHeading: "إجراءات الحزم",
|
|
4310
|
+
colFlow: "التدفق",
|
|
4311
|
+
colActivation: "التفعيل",
|
|
4312
|
+
colActions: "إجراءات",
|
|
4313
|
+
toggleLabel: "تفعيل {{label}}",
|
|
4314
|
+
on: "مفعل",
|
|
4315
|
+
off: "إيقاف",
|
|
4316
|
+
clone: "استنساخ",
|
|
4317
|
+
cloneTitle: "استنساخ تدفق الحزمة",
|
|
4318
|
+
cloneBody: "تحتفظ النسخة بالتعريف كاملاً وتتطلب اسم آلة وتسمية جديدين. حرّر النسخة في Studio.",
|
|
4319
|
+
cloneName: "اسم آلة جديد",
|
|
4320
|
+
cloneLabel: "تسمية جديدة",
|
|
4321
|
+
cancel: "إلغاء",
|
|
4322
|
+
cloneConfirm: "إنشاء نسخة",
|
|
4323
|
+
cloneCreated: "تم إنشاء التدفق «{{name}}».",
|
|
4324
|
+
emptyTitle: "لا توجد تدفقات من الحزم",
|
|
4325
|
+
emptyBody: "لا توجد حزمة مثبّتة توفّر تدفق أتمتة في هذا النشر. التدفقات التي تنشئها بنفسك موجودة في Studio.",
|
|
4326
|
+
loadFailed: "تعذّر تحميل أتمتة الحزم.",
|
|
4327
|
+
toggleFailedHttp: "تعذّر تغيير التفعيل (HTTP {{status}}).",
|
|
4328
|
+
toggleFailed: "تعذّر تغيير التفعيل.",
|
|
4329
|
+
cloneFailedHttp: "تعذّر استنساخ هذا التدفق (HTTP {{status}}).",
|
|
4330
|
+
cloneFailed: "تعذّر استنساخ هذا التدفق.",
|
|
4331
|
+
actionsSubtitle: "إجراءات تأتي مع الحزم المثبّتة. أوقف أحدها في هذا النشر فيتوقف عن العمل في كل مكان يُعرض فيه. ويبقى بإمكانك إنشاء إجراء خاص بك إلى جانبه في Studio.",
|
|
4332
|
+
colAction: "الإجراء",
|
|
4333
|
+
colObject: "الكائن",
|
|
4334
|
+
actionToggleLabel: "تفعيل {{label}} على {{object}}",
|
|
4335
|
+
actionsEmptyTitle: "لا توجد إجراءات من الحزم",
|
|
4336
|
+
actionsEmptyBody: "لا توجد حزمة مثبّتة تعلن عن إجراء في هذا النشر. الإجراءات التي تنشئها بنفسك موجودة في Studio.",
|
|
4337
|
+
actionsLoadFailed: "تعذّر تحميل إجراءات الحزم.",
|
|
4338
|
+
},
|
|
4339
|
+
element: {
|
|
4340
|
+
number: {
|
|
4341
|
+
noObject: "لم يُحدَّد أي كائن: عيّن object أو dataSource.object.",
|
|
4342
|
+
},
|
|
4343
|
+
},
|
|
3410
4344
|
};
|
|
3411
4345
|
export default ar;
|