complexqa_frontend_core 1.2.1 → 1.3.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "complexqa_frontend_core",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "core of web ",
5
5
  "type": "module",
6
6
  "exports": {
@@ -0,0 +1,267 @@
1
+ export const LOCALE_AG_GRID_RU = {
2
+ // Выбор фильтра
3
+ selectAll: '(Выделить все)',
4
+ selectAllSearchResults: '(Выделить все результаты поиска)',
5
+ searchOoo: 'Поиск...',
6
+ blanks: '(Пусто)',
7
+ noMatches: 'Нет совпадений',
8
+
9
+ // Числовой фильтр & текстовый фильтр
10
+ filterOoo: 'Фильтрация...',
11
+ equals: 'Равно',
12
+ notEqual: 'Не равно',
13
+ empty: 'Выберите один',
14
+
15
+ // Числовой фильтр
16
+ lessThan: 'Меньше, чем',
17
+ greaterThan: 'Больше, чем',
18
+ lessThanOrEqual: 'Меньше или равно',
19
+ greaterThanOrEqual: 'Больше или равно',
20
+ inRange: 'В промежутке',
21
+ inRangeStart: 'от',
22
+ inRangeEnd: 'до',
23
+
24
+ // Текстовый фильтр
25
+ contains: 'Содержит',
26
+ notContains: 'Не содержит',
27
+ startsWith: 'Начинается с',
28
+ endsWith: 'Кончается на',
29
+
30
+ // Фильтр даты
31
+ dateFormatOoo: 'dd-mm-yyyy',
32
+
33
+ // Условия фильтрации
34
+ andCondition: 'И',
35
+ orCondition: 'ИЛИ',
36
+
37
+ // Кнопки фильтра
38
+ applyFilter: 'Применить',
39
+ resetFilter: 'Сбросить',
40
+ clearFilter: 'Очистить',
41
+ cancelFilter: 'Отменить',
42
+
43
+ // Заголовки фильтра
44
+ textFilter: 'Текстовый фильтр',
45
+ numberFilter: 'Числовой фильтр',
46
+ dateFilter: 'Фильтр по дате',
47
+ setFilter: 'Выбрать фильтр',
48
+
49
+ // Боковая панель
50
+ columns: 'Столбцы',
51
+ filters: 'Фильтры',
52
+
53
+ // Панель инструментов столбцов
54
+ pivotMode: 'Режим сводной таблицы',
55
+ groups: 'Группы строк',
56
+ rowGroupColumnsEmptyMessage: 'Перетащите сюда для группировки по строкам',
57
+ values: 'Значения',
58
+ valueColumnsEmptyMessage: 'Перетащите сюда для агрегации',
59
+ pivots: 'Заголовки столбцов',
60
+ pivotColumnsEmptyMessage: 'Перетащите сюда для задания заголовков столбцам',
61
+
62
+ // Заголовок группы столбцов по умолчанию
63
+ group: 'Группа',
64
+
65
+ // Другое
66
+ loadingOoo: 'Загрузка...',
67
+ noRowsToShow: 'Нет данных',
68
+ enabled: 'Включено',
69
+
70
+ // Меню
71
+ pinColumn: 'Закрепить столбец',
72
+ pinLeft: 'Закрепить слева',
73
+ pinRight: 'Закрепить справа',
74
+ noPin: 'Не закреплять',
75
+ valueAggregation: 'Агрегация по значению',
76
+ autosizeThiscolumn: 'Автоматически задавать размер этого столбца',
77
+ autosizeAllColumns: 'Автоматически задавать размер всем столбцам',
78
+ groupBy: 'Группировать по',
79
+ ungroupBy: 'Разгруппировать по',
80
+ resetColumns: 'Сбросить столбцы',
81
+ expandAll: 'Развернуть все',
82
+ collapseAll: 'Свернуть все',
83
+ copy: 'Копировать',
84
+ ctrlC: 'Ctrl+C',
85
+ copyWithHeaders: 'Копировать с заголовками',
86
+ paste: 'Вставить',
87
+ ctrlV: 'Ctrl+V',
88
+ export: 'Экспорт',
89
+ csvExport: 'Экспорт в CSV (.csv)',
90
+ excelExport: 'Экспорт в Excel (.xlsx)',
91
+ excelXmlExport: 'Экспорт в XML (.xml)',
92
+
93
+ // Агрегирование корпоративного меню и строки состояния
94
+ sum: 'Сумма',
95
+ min: 'Минимум',
96
+ max: 'Максимум',
97
+ none: 'Пусто',
98
+ count: 'Количество',
99
+ avg: 'Среднее значение',
100
+ filteredRows: 'Отфильтровано',
101
+ selectedRows: 'Выбрано',
102
+ totalRows: 'Всего строк',
103
+ totalAndFilteredRows: 'Строки',
104
+ more: 'многих',
105
+ to: 'из',
106
+ of: 'по',
107
+ page: 'Страница',
108
+ nextPage: 'Следующая страница',
109
+ lastPage: 'Последняя страница',
110
+ firstPage: 'Первая страница',
111
+ previousPage: 'Предыдущая страница',
112
+
113
+ // Корпоративное меню (графики)
114
+ pivotChartAndPivotMode: 'Сводная диаграмма & режим сведения',
115
+ pivotChart: 'Сводная диаграмма',
116
+ chartRange: 'Диапазон диаграммы',
117
+
118
+ columnChart: 'Столбиковая диаграмма',
119
+ groupedColumn: 'Сгруппированная',
120
+ stackedColumn: 'Сложенная',
121
+ normalizedColumn: '100% Сложенная',
122
+
123
+ barChart: 'Панель',
124
+ groupedBar: 'Сгруппированная',
125
+ stackedBar: 'Сложенная',
126
+ normalizedBar: '100% Сложенная',
127
+
128
+ pieChart: 'Круговая диаграмма',
129
+ pie: 'Круговая диаграмма',
130
+ doughnut: 'Кольцевая диаграмма',
131
+
132
+ line: 'Линия',
133
+
134
+ xyChart: 'X Y (Разброс)',
135
+ scatter: 'Диаграмма рассеяния',
136
+ bubble: 'Пузырьковая диаграмма',
137
+
138
+ areaChart: 'Область',
139
+ area: 'Диаграмма с областями',
140
+ stackedArea: 'Сложенная',
141
+ normalizedArea: '100% Сложенная',
142
+
143
+ histogramChart: 'Гистограмма',
144
+
145
+ // Графики
146
+ pivotChartTitle: 'Сводная диаграмма',
147
+ rangeChartTitle: 'График диапазона',
148
+ settings: 'Настройки',
149
+ data: 'Данные',
150
+ format: 'Формат',
151
+ categories: 'Категории',
152
+ defaultCategory: '(Пусто)',
153
+ series: 'Серии',
154
+ xyValues: 'X Y Значения',
155
+ paired: 'Парный режим',
156
+ axis: 'Ось',
157
+ navigator: 'Навигация',
158
+ color: 'Цвет',
159
+ thickness: 'Толщина',
160
+ xType: 'X Тип',
161
+ automatic: 'Автоматически',
162
+ category: 'Категория',
163
+ number: 'Число',
164
+ time: 'Время',
165
+ xRotation: 'X Поворот',
166
+ yRotation: 'Y Поворот',
167
+ ticks: 'Отметки',
168
+ width: 'Ширина',
169
+ height: 'Высота',
170
+ length: 'Длина',
171
+ padding: 'Внутренний отступ',
172
+ spacing: 'Отступ',
173
+ chart: 'Диаграмма',
174
+ title: 'Заголовок',
175
+ titlePlaceholder: 'Заголовок диаграммы - двойной щелчок для редактирования',
176
+ background: 'Фон',
177
+ font: 'Шрифт',
178
+ top: 'Верх',
179
+ right: 'Право',
180
+ bottom: 'Низ',
181
+ left: 'Лево',
182
+ labels: 'Метки',
183
+ size: 'Размер',
184
+ minSize: 'Минимальный размер',
185
+ maxSize: 'Максимальный размер',
186
+ legend: 'Легенда',
187
+ position: 'Позиция',
188
+ markerSize: 'Размер маркера',
189
+ markerStroke: 'Обводка маркера',
190
+ markerPadding: 'Внутренний отступ маркера',
191
+ itemSpacing: 'Расстояние между предметами',
192
+ itemPaddingX: 'Внутренний отступ предмета по X',
193
+ itemPaddingY: 'Внутренний отступ предмета по Y',
194
+ layoutHorizontalSpacing: 'Горизонтальный отступ',
195
+ layoutVerticalSpacing: 'Вертикальный отступ',
196
+ strokeWidth: 'Ширина обводки',
197
+ offset: 'Смещение',
198
+ offsets: 'Смещения',
199
+ tooltips: 'Всплывающие подсказки',
200
+ callout: 'Вызов',
201
+ markers: 'Маркеры',
202
+ shadow: 'Тень',
203
+ blur: 'Размытие',
204
+ xOffset: 'Смещение по X',
205
+ yOffset: 'Смещение по Y',
206
+ lineWidth: 'Ширина линии',
207
+ normal: 'Нормальный',
208
+ bold: 'Жирный',
209
+ italic: 'Наклоненный',
210
+ boldItalic: 'Жирный наклоненный',
211
+ predefined: 'Предопределенный',
212
+ fillOpacity: 'Непрозрачность заливки',
213
+ strokeOpacity: 'Непрозрачность линии',
214
+ histogramBinCount: 'Количество сегментов',
215
+ columnGroup: 'Столбец',
216
+ barGroup: 'Панель',
217
+ pieGroup: 'Круговая',
218
+ lineGroup: 'Линейная',
219
+ scatterGroup: 'X Y (Разброс)',
220
+ areaGroup: 'Зональная',
221
+ histogramGroup: 'Гистограмма',
222
+ groupedColumnTooltip: 'Сгруппированная',
223
+ stackedColumnTooltip: 'Сложенная',
224
+ normalizedColumnTooltip: '100% Сложенная',
225
+ groupedBarTooltip: 'Сгруппированная',
226
+ stackedBarTooltip: 'Сложенная',
227
+ normalizedBarTooltip: '100% Сложенная',
228
+ pieTooltip: 'Круговая',
229
+ doughnutTooltip: 'Кольцевая',
230
+ lineTooltip: 'Линейная',
231
+ groupedAreaTooltip: 'Зональная',
232
+ stackedAreaTooltip: 'Сложенная',
233
+ normalizedAreaTooltip: '100% Сложенная',
234
+ scatterTooltip: 'Рассеяния',
235
+ bubbleTooltip: 'Пузырьковая',
236
+ histogramTooltip: 'Гистограмма',
237
+ noDataToChart: 'Нет данных для представления в виде диаграммы.',
238
+ pivotChartRequiresPivotMode: 'Для сводной диаграммы необходимо включить режим сводной диаграммы.',
239
+ chartSettingsToolbarTooltip: 'Меню',
240
+ chartLinkToolbarTooltip: 'Связать с сеткой',
241
+ chartUnlinkToolbarTooltip: 'Не связывать с сеткой',
242
+ chartDownloadToolbarTooltip: 'Загрузить диаграмму',
243
+
244
+ // ARIA
245
+ ariaHidden: 'скрытый',
246
+ ariaVisible: 'видимый',
247
+ ariaChecked: 'проверенный',
248
+ ariaUnchecked: 'непроверенный',
249
+ ariaIndeterminate: 'неопределенный',
250
+ ariaColumnSelectAll: 'Переключить на выделение всех столбцов',
251
+ ariaInputEditor: 'Редактор ввода',
252
+ ariaDateFilterInput: 'Ввод фильтра даты',
253
+ ariaFilterInput: 'Ввод фильтра',
254
+ ariaFilterColumnsInput: 'Ввод фильтра столбцов',
255
+ ariaFilterValue: 'Значение фильтра',
256
+ ariaFilterFromValue: 'Фильтровать от значения',
257
+ ariaFilterToValue: 'Фильтровать до значения',
258
+ ariaFilteringOperator: 'Оператор фильтрации',
259
+ ariaColumnToggleVisibility: 'переключить видимость столбца',
260
+ ariaColumnGroupToggleVisibility: 'переключить видимость группы столбцов',
261
+ ariaRowSelect: 'Нажмите ПРОБЕЛ для выделения данной строки',
262
+ ariaRowDeselect: 'Нажмите ПРОБЕЛ для снятия выделения данной строки',
263
+ ariaRowToggleSelection: 'Нажмите ПРОБЕЛ, чтобы переключить выделение строки',
264
+ ariaRowSelectAll: 'Нажмите ПРОБЕЛ, чтобы переключить выделение всех строк',
265
+ ariaSearch: 'Поиск',
266
+ ariaSearchFilterValues: 'Поиск значений по фильтру',
267
+ }
@@ -0,0 +1,124 @@
1
+ import { LOCALE_AG_GRID_RU } from "./locale_table_ru.js";
2
+ import { LOCALE_AG_GRID_EG } from "./table_locale_ar.js";
3
+ import { typeTestCase } from "../types/family_elements/typeTestCase.js";
4
+ import { typeProject } from "../types/family_elements/typeProject.js";
5
+
6
+ /**
7
+ *
8
+ * @version v.0.1 (17/08/2025)
9
+ */
10
+ export class TableBaseConfig
11
+ {
12
+
13
+
14
+ /**
15
+ *
16
+ * @version v.0.1 (17/08/2025)
17
+ * @param {string} element_type
18
+ * @param {string} section
19
+ * @param {string} lang
20
+ *
21
+ * @todo - header_name модифицируем под локаль
22
+ */
23
+ static get_config(element_type, section, lang)
24
+ {
25
+ let response = this.config;
26
+
27
+ response.getRowNodeId = this.#getRowNodeId(element_type);
28
+
29
+ if (lang !== 'en')
30
+ {
31
+ response.localeText = TableBaseConfig.#localeText(lang);
32
+ }
33
+
34
+ return response;
35
+ }
36
+
37
+
38
+ /**
39
+ *
40
+ * @param lang
41
+ * @returns {{}}
42
+ */
43
+ static #localeText(lang)
44
+ {
45
+ let response = {};
46
+ switch (lang)
47
+ {
48
+ case 'ru':
49
+ response = LOCALE_AG_GRID_RU
50
+ break;
51
+ case 'ar':
52
+ response = LOCALE_AG_GRID_EG
53
+ break;
54
+ }
55
+
56
+ return response;
57
+ }
58
+
59
+
60
+ /**
61
+ *
62
+ * @version v.0.1 (17/08/2025)
63
+ * @param element_type
64
+ * @returns {function(*): number}
65
+ *
66
+ */
67
+ static #getRowNodeId(element_type)
68
+ {
69
+ return function (data)
70
+ {
71
+ let id = 0;
72
+ let model = false;
73
+
74
+ switch (element_type)
75
+ {
76
+ case 'test_case':
77
+ model = new typeTestCase();
78
+ break;
79
+ case 'project':
80
+ model = new typeProject();
81
+ break;
82
+ }
83
+
84
+ if (model)
85
+ {
86
+ let key = model.get_primary_key();
87
+ if (data?.[key])
88
+ {
89
+ id= data?.[key];
90
+ }
91
+ }
92
+
93
+ return id;
94
+ }
95
+ }
96
+
97
+
98
+ /**
99
+ *
100
+ * @version v.0.1 (17/08/2025)
101
+ */
102
+ static config = {
103
+ defaultColDef: {
104
+ filter : true,
105
+ sortable : true,
106
+ resizable: true,
107
+ editable : false,
108
+ },
109
+ suppressMenuHide : true,
110
+ columnHoverHighlight : false,
111
+ enableBrowserTooltips : false,
112
+ rowSelection : 'multiple',
113
+ rowMultiSelectWithClick : false,
114
+ suppressRowClickSelection: true,
115
+ enableRangeSelection : true,
116
+ headerHeight: '44',
117
+ rowHeight : '44',
118
+ groupIncludeFooter : false,
119
+ groupIncludeTotalFooter: false,
120
+ overlayLoadingTemplate : '<span class="ag-overlay-loading-center">wait</span>',
121
+ overlayNoRowsTemplate : '<span class="ag-overlay-loading-center">no data</span>',
122
+ suppressNoRowsOverlay : false,
123
+ };
124
+ }
@@ -0,0 +1,196 @@
1
+ import { typeTableConfiguration } from "../types/family_service/typeTableConfiguration.js";
2
+ import { typeTableColumn } from "../types/family_service/typeTableColumn.js";
3
+
4
+ /**
5
+ *
6
+ * @version v.0.1 (17/08/2025)
7
+ */
8
+ export class TableConfiguration
9
+ {
10
+
11
+ static init_options = false;
12
+
13
+ static config = {};
14
+
15
+ static state = {
16
+ loaded: false
17
+ }
18
+
19
+ /**
20
+ *
21
+ * @param init_options
22
+ */
23
+ constructor(init_options = false)
24
+ {
25
+ if (this.constructor._instance)
26
+ {
27
+ return this.constructor._instance;
28
+ }
29
+
30
+ this.init_options = init_options;
31
+
32
+ this.constructor._instance = this;
33
+
34
+ this.#bootstrap();
35
+ }
36
+
37
+
38
+ /**
39
+ *
40
+ * @version v.0.1 (17/08/2025)
41
+ * @param {string} element_type
42
+ * @param {string} section
43
+ * @param {string} lang
44
+ *
45
+ * @todo - header_name модифицируем под локаль
46
+ */
47
+ static get_config(element_type, section, lang)
48
+ {
49
+ if (!this.state.loaded)
50
+ {
51
+ this.#bootstrap();
52
+ }
53
+
54
+ if (this.config?.[ element_type ]?.[ section ])
55
+ {
56
+ return this.config?.[ element_type ]?.[ section ];
57
+ }
58
+ else
59
+ {
60
+ return false;
61
+ }
62
+ }
63
+
64
+
65
+ /****************************************************************************************/
66
+ /****************************************************************************************/
67
+
68
+ /****************************************************************************************/
69
+
70
+
71
+ /**
72
+ * Не понятно пока как лучше организовать
73
+ * @version v.0.1 (17/08/2025)
74
+ */
75
+ static #bootstrap()
76
+ {
77
+ if (this.state.loaded)
78
+ {
79
+ return;
80
+ }
81
+
82
+ this.#bootstrap_test_case();
83
+
84
+ this.state.loaded = true;
85
+ }
86
+
87
+
88
+ /**
89
+ *
90
+ * @version v.0.1 (17/08/2025)
91
+ */
92
+ static #bootstrap_test_case()
93
+ {
94
+ let payload_listing = {};
95
+
96
+ let columns = this.#bootstrap_test_case_columns();
97
+
98
+ payload_listing.config = new typeTableConfiguration({
99
+ columns: columns
100
+ });
101
+
102
+ this.config.test_case = {
103
+ listing: payload_listing
104
+ }
105
+ }
106
+
107
+
108
+ /**
109
+ *
110
+ * @version v.0.1 (17/08/2025)
111
+ */
112
+ static #bootstrap_test_case_columns()
113
+ {
114
+ let response = [];
115
+
116
+ response.push(new typeTableColumn({
117
+ header_name : 'ID',
118
+ field : 'test_case_id',
119
+ width : '120',
120
+ sort_order : '1',
121
+ cell_classes: 'bg-secondary',
122
+ default_sort: 'asc',
123
+ is_sortable : true,
124
+ is_filter : true,
125
+ is_hide : true,
126
+ is_editable : false,
127
+ }));
128
+
129
+ response.push(new typeTableColumn({
130
+ header_name : 'Name',
131
+ field : 'test_case_title',
132
+ width : '480',
133
+ sort_order : '1',
134
+ cell_classes: '',
135
+ default_sort: '',
136
+ is_sortable : true,
137
+ is_filter : true,
138
+ is_hide : false,
139
+ is_editable : true,
140
+ }));
141
+
142
+ response.push(new typeTableColumn({
143
+ header_name : 'Time',
144
+ field : 'test_case_time_to_execute',
145
+ width : '120',
146
+ sort_order : '2',
147
+ cell_classes: '',
148
+ default_sort: '',
149
+ is_sortable : true,
150
+ is_filter : true,
151
+ is_hide : false,
152
+ is_editable : true,
153
+ }));
154
+
155
+ response.push(new typeTableColumn({
156
+ header_name : 'Complexity',
157
+ field : 'test_case_complexity',
158
+ width : '120',
159
+ sort_order : '2',
160
+ cell_classes: '',
161
+ default_sort: '',
162
+ is_sortable : true,
163
+ is_filter : true,
164
+ is_hide : false,
165
+ is_editable : true,
166
+ }));
167
+
168
+ response.push(new typeTableColumn({
169
+ header_name : 'Importance',
170
+ field : 'test_case_importance',
171
+ width : '120',
172
+ sort_order : '2',
173
+ cell_classes: '',
174
+ default_sort: '',
175
+ is_sortable : true,
176
+ is_filter : true,
177
+ is_hide : false,
178
+ is_editable : true,
179
+ }));
180
+
181
+ response.push(new typeTableColumn({
182
+ header_name : 'updated at',
183
+ field : 'updated_at',
184
+ width : '120',
185
+ sort_order : '2',
186
+ cell_classes: 'bg-secondary',
187
+ default_sort: '',
188
+ is_sortable : true,
189
+ is_filter : true,
190
+ is_hide : true,
191
+ is_editable : false,
192
+ }));
193
+
194
+ return response;
195
+ }
196
+ }
@@ -0,0 +1,676 @@
1
+ /**
2
+ * Please note:
3
+ *
4
+ * Translations are provided as an illustration only and are
5
+ * not guaranteed to be accurate or error free.
6
+ *
7
+ * They are designed to show developers where to store their
8
+ * chosen phrase or spelling variant in the target language.
9
+ *
10
+ * https://github.com/ag-grid/ag-grid/blob/latest/community-modules/locale/src/ar-EG.ts
11
+ */
12
+
13
+ export const LOCALE_AG_GRID_EG = {
14
+ // Set Filter
15
+ selectAll: '(تحديد الكل)',
16
+ selectAllSearchResults: '(تحديد كل نتائج البحث)',
17
+ addCurrentSelectionToFilter: 'إضافة التحديد الحالي إلى الفلتر',
18
+ searchOoo: 'بحث...',
19
+ blanks: '(فارغ)',
20
+ noMatches: 'لا توجد تطابقات',
21
+
22
+ // Number Filter & Text Filter
23
+ filterOoo: 'تصفية...',
24
+ equals: 'يساوي',
25
+ notEqual: 'لا يساوي',
26
+ blank: 'فارغ',
27
+ notBlank: 'ليس فارغ',
28
+ empty: 'اختر واحد',
29
+
30
+ // Number Filter
31
+ lessThan: 'أقل من',
32
+ greaterThan: 'أكبر من',
33
+ lessThanOrEqual: 'أقل من أو يساوي',
34
+ greaterThanOrEqual: 'أكبر من أو يساوي',
35
+ inRange: 'بين',
36
+ inRangeStart: 'من',
37
+ inRangeEnd: 'إلى',
38
+
39
+ // Text Filter
40
+ contains: 'يحتوي على',
41
+ notContains: 'لا يحتوي على',
42
+ startsWith: 'يبدأ بـ',
43
+ endsWith: 'ينتهي بـ',
44
+
45
+ // Date Filter
46
+ dateFormatOoo: 'yyyy-mm-dd',
47
+ before: 'قبل',
48
+ after: 'بعد',
49
+
50
+ // Filter Conditions
51
+ andCondition: 'و',
52
+ orCondition: 'أو',
53
+
54
+ // Filter Buttons
55
+ applyFilter: 'تطبيق',
56
+ resetFilter: 'إعادة تعيين',
57
+ clearFilter: 'مسح',
58
+ cancelFilter: 'إلغاء',
59
+
60
+ // Filter Titles
61
+ textFilter: 'فلتر النص',
62
+ numberFilter: 'فلتر الأرقام',
63
+ dateFilter: 'فلتر التاريخ',
64
+ setFilter: 'فلتر المجموعة',
65
+
66
+ // Group Column Filter
67
+ groupFilterSelect: 'اختر الحقل:',
68
+
69
+ // New Filter Tool Panel
70
+ filterSummaryInactive: 'هو (الكل)',
71
+ filterSummaryContains: 'يحتوي على',
72
+ filterSummaryNotContains: 'لا يحتوي على',
73
+ filterSummaryTextEquals: 'يساوي',
74
+ filterSummaryTextNotEqual: 'لا يساوي',
75
+ filterSummaryStartsWith: 'يبدأ بـ',
76
+ filterSummaryEndsWith: 'ينتهي بـ',
77
+ filterSummaryBlank: 'هو فارغ',
78
+ filterSummaryNotBlank: 'ليس فارغًا',
79
+ filterSummaryEquals: '=',
80
+ filterSummaryNotEqual: '!=',
81
+ filterSummaryGreaterThan: '>',
82
+ filterSummaryGreaterThanOrEqual: '>=',
83
+ filterSummaryLessThan: '<',
84
+ filterSummaryLessThanOrEqual: '<=',
85
+ filterSummaryInRange: 'بين',
86
+ filterSummaryInRangeValues: '(${variable}, ${variable})',
87
+ filterSummaryTextQuote: '"${variable}"',
88
+ filterSummaryListInactive: 'هو (الكل)',
89
+ filterSummaryListSeparator: ', ',
90
+ filterSummaryListShort: 'هو (${variable})',
91
+ filterSummaryListLong: 'هو (${variable}) و${variable} أخرى',
92
+ addFilterCard: 'إضافة فلتر',
93
+ agTextColumnFilterDisplayName: 'فلتر بسيط',
94
+ agNumberColumnFilterDisplayName: 'فلتر بسيط',
95
+ agDateColumnFilterDisplayName: 'فلتر بسيط',
96
+ agSetColumnFilterDisplayName: 'فلتر اختيار',
97
+ agMultiColumnFilterDisplayName: 'فلتر مركب',
98
+ addFilterPlaceholder: 'ابحث في الأعمدة...',
99
+
100
+ // Advanced Filter
101
+ advancedFilterContains: 'يحتوي على',
102
+ advancedFilterNotContains: 'لا يحتوي على',
103
+ advancedFilterTextEquals: 'يساوي',
104
+ advancedFilterTextNotEqual: 'لا يساوي',
105
+ advancedFilterStartsWith: 'يبدأ بـ',
106
+ advancedFilterEndsWith: 'ينتهي بـ',
107
+ advancedFilterBlank: 'فارغ',
108
+ advancedFilterNotBlank: 'غير فارغ',
109
+ advancedFilterEquals: '=',
110
+ advancedFilterNotEqual: '!=',
111
+ advancedFilterGreaterThan: '>',
112
+ advancedFilterGreaterThanOrEqual: '>=',
113
+ advancedFilterLessThan: '<',
114
+ advancedFilterLessThanOrEqual: '<=',
115
+ advancedFilterTrue: 'صحيح',
116
+ advancedFilterFalse: 'خاطئ',
117
+ advancedFilterAnd: 'و',
118
+ advancedFilterOr: 'أو',
119
+ advancedFilterApply: 'تطبيق',
120
+ advancedFilterReset: 'إعادة تعيين',
121
+ advancedFilterCancel: 'إلغاء',
122
+ advancedFilterClear: 'مسح',
123
+ advancedFilterBuilder: 'المنشئ',
124
+ advancedFilterValidationMissingColumn: 'العمود مفقود',
125
+ advancedFilterValidationMissingOption: 'الخيار مفقود',
126
+ advancedFilterValidationMissingValue: 'القيمة مفقودة',
127
+ advancedFilterValidationInvalidColumn: 'العمود غير موجود',
128
+ advancedFilterValidationInvalidOption: 'الخيار غير موجود',
129
+ advancedFilterValidationMissingQuote: 'القيمة تفتقد علامة الاقتباس النهائية',
130
+ advancedFilterValidationNotANumber: 'القيمة ليست رقماً',
131
+ advancedFilterValidationInvalidDate: 'القيمة ليست تاريخاً صحيحاً',
132
+ advancedFilterValidationMissingCondition: 'الشرط مفقود',
133
+ advancedFilterValidationJoinOperatorMismatch: 'يجب أن تكون عوامل الربط داخل الشرط نفسها',
134
+ advancedFilterValidationInvalidJoinOperator: 'عامل الربط غير موجود',
135
+ advancedFilterValidationMissingEndBracket: 'القوس الختامي مفقود',
136
+ advancedFilterValidationExtraEndBracket: 'أقواس ختامية كثيرة جداً',
137
+ advancedFilterValidationMessage: 'التعبير يحتوي على خطأ. ${variable} - ${variable}.',
138
+ advancedFilterValidationMessageAtEnd: 'التعبير يحتوي على خطأ. ${variable} في نهاية التعبير.',
139
+ advancedFilterBuilderTitle: 'عامل تصفية متقدم',
140
+ advancedFilterBuilderApply: 'تطبيق',
141
+ advancedFilterBuilderClear: 'مسح',
142
+ advancedFilterBuilderReset: 'إعادة تعيين',
143
+ advancedFilterBuilderCancel: 'إلغاء',
144
+ advancedFilterBuilderAddButtonTooltip: 'إضافة عامل تصفية أو مجموعة',
145
+ advancedFilterBuilderRemoveButtonTooltip: 'إزالة',
146
+ advancedFilterBuilderMoveUpButtonTooltip: 'تحريك للأعلى',
147
+ advancedFilterBuilderMoveDownButtonTooltip: 'تحريك للأسفل',
148
+ advancedFilterBuilderAddJoin: 'إضافة مجموعة',
149
+ advancedFilterBuilderAddCondition: 'إضافة عامل تصفية',
150
+ advancedFilterBuilderSelectColumn: 'اختر عمودًا',
151
+ advancedFilterBuilderSelectOption: 'اختر خيارًا',
152
+ advancedFilterBuilderEnterValue: 'أدخل قيمة...',
153
+ advancedFilterBuilderValidationAlreadyApplied: 'عامل التصفية الحالي مُطبَّق بالفعل.',
154
+ advancedFilterBuilderValidationIncomplete: 'لم يتم إكمال كل الشروط.',
155
+ advancedFilterBuilderValidationSelectColumn: 'يجب اختيار عمود.',
156
+ advancedFilterBuilderValidationSelectOption: 'يجب اختيار خيار.',
157
+ advancedFilterBuilderValidationEnterValue: 'يجب إدخال قيمة.',
158
+
159
+ // Editor Validation Errors
160
+ minDateValidation: 'التاريخ يجب أن يكون بعد ${variable}',
161
+ maxDateValidation: 'التاريخ يجب أن يكون قبل ${variable}',
162
+ maxLengthValidation: 'يجب أن يكون ${variable} حرف أو أقل.',
163
+ minValueValidation: 'يجب أن يكون أكبر من أو يساوي ${variable}',
164
+ maxValueValidation: 'يجب أن يكون أقل من أو يساوي ${variable}',
165
+ invalidSelectionValidation: 'اختيار غير صالح.',
166
+ tooltipValidationErrorSeparator: '. ',
167
+
168
+ // Side Bar
169
+ columns: 'أعمدة',
170
+ filters: 'مرشحات',
171
+
172
+ // columns tool panel
173
+ pivotMode: 'وضع المحور',
174
+ groups: 'مجموعات الصفوف',
175
+ rowGroupColumnsEmptyMessage: 'اسحب هنا لتعيين مجموعات الصفوف',
176
+ values: 'القيم',
177
+ valueColumnsEmptyMessage: 'اسحب هنا للتجميع',
178
+ pivots: 'تسميات الأعمدة',
179
+ pivotColumnsEmptyMessage: 'اسحب هنا لتعيين تسميات الأعمدة',
180
+
181
+ // Header of the Default Group Column
182
+ group: 'مجموعة',
183
+
184
+ // Row Drag
185
+ rowDragRow: 'صف',
186
+ rowDragRows: 'صفوف',
187
+
188
+ // Other
189
+ loadingOoo: 'جارٍ التحميل...',
190
+ loadingError: 'خطأ',
191
+ noRowsToShow: 'لا توجد صفوف للعرض',
192
+ enabled: 'مُمكّن',
193
+
194
+ // Menu
195
+ pinColumn: 'تثبيت العمود',
196
+ pinLeft: 'تثبيت لليسار',
197
+ pinRight: 'تثبيت لليمين',
198
+ noPin: 'بدون تثبيت',
199
+ valueAggregation: 'تجميع القيمة',
200
+ noAggregation: 'بدون تجميع',
201
+ autosizeThisColumn: 'تغيير حجم هذا العمود تلقائيًا',
202
+ autosizeAllColumns: 'تغيير حجم جميع الأعمدة تلقائيًا',
203
+ groupBy: 'تجميع بواسطة',
204
+ ungroupBy: 'إلغاء التجميع بواسطة',
205
+ ungroupAll: 'إلغاء التجميع الكل',
206
+ addToValues: 'إضافة ${variable} إلى القيم',
207
+ removeFromValues: 'إزالة ${variable} من القيم',
208
+ addToLabels: 'إضافة ${variable} إلى التسميات',
209
+ removeFromLabels: 'إزالة ${variable} من التسميات',
210
+ resetColumns: 'إعادة ضبط الأعمدة',
211
+ expandAll: 'توسيع جميع مجموعات الصفوف',
212
+ collapseAll: 'إغلاق جميع مجموعات الصفوف',
213
+ copy: 'نسخ',
214
+ ctrlC: 'Ctrl+C',
215
+ ctrlX: 'Ctrl+X',
216
+ copyWithHeaders: 'نسخ مع الرؤوس',
217
+ copyWithGroupHeaders: 'نسخ مع رؤوس المجموعات',
218
+ cut: 'قص',
219
+ paste: 'لصق',
220
+ ctrlV: 'Ctrl+V',
221
+ export: 'تصدير',
222
+ csvExport: 'تصدير CSV',
223
+ excelExport: 'تصدير Excel',
224
+ columnFilter: 'تصفية العمود',
225
+ columnChooser: 'اختيار الأعمدة',
226
+ chooseColumns: 'اختيار الأعمدة',
227
+ sortAscending: 'ترتيب تصاعدي',
228
+ sortDescending: 'ترتيب تنازلي',
229
+ sortUnSort: 'إلغاء الترتيب',
230
+
231
+ // Enterprise Menu Aggregation and Status Bar
232
+ sum: 'المجموع',
233
+ first: 'الأول',
234
+ last: 'الأخير',
235
+ min: 'الحد الأدنى',
236
+ max: 'الحد الأقصى',
237
+ none: 'بدون',
238
+ count: 'العدد',
239
+ avg: 'المتوسط',
240
+ filteredRows: 'المرشحة',
241
+ selectedRows: 'المحددة',
242
+ totalRows: 'إجمالي الصفوف',
243
+ totalAndFilteredRows: 'الصفوف',
244
+ more: 'المزيد',
245
+ to: 'إلى',
246
+ of: 'من',
247
+ page: 'الصفحة',
248
+ pageLastRowUnknown: '?',
249
+ nextPage: 'الصفحة التالية',
250
+ lastPage: 'الصفحة الأخيرة',
251
+ firstPage: 'الصفحة الأولى',
252
+ previousPage: 'الصفحة السابقة',
253
+ pageSizeSelectorLabel: 'حجم الصفحة:',
254
+ footerTotal: 'المجموع',
255
+ statusBarLastRowUnknown: '؟',
256
+ scrollColumnIntoView: "مرر '${variable}' إلى العرض",
257
+
258
+ // Pivoting
259
+ pivotColumnGroupTotals: 'المجموع',
260
+
261
+ // Enterprise Menu (Charts)
262
+ pivotChartAndPivotMode: 'الرسم المحوري ووضع المحوري',
263
+ pivotChart: 'الرسم المحوري',
264
+ chartRange: 'نطاق الرسم',
265
+ columnChart: 'عمود',
266
+ groupedColumn: 'مجموعة',
267
+ stackedColumn: 'مكدس',
268
+ normalizedColumn: '100% مكدس',
269
+ barChart: 'شريط',
270
+ groupedBar: 'مجموعة',
271
+ stackedBar: 'مكدس',
272
+ normalizedBar: '100% مكدس',
273
+ pieChart: 'دائرة',
274
+ pie: 'دائرة',
275
+ donut: 'دونات',
276
+ lineChart: 'خط',
277
+ stackedLine: 'مكدس',
278
+ normalizedLine: 'مكدس 100%',
279
+ xyChart: 'س س (نقطة)',
280
+ scatter: 'نقاط مبعثرة',
281
+ bubble: 'فقاعة',
282
+ areaChart: 'منطقة',
283
+ area: 'منطقة',
284
+ stackedArea: 'مكدس',
285
+ normalizedArea: '100% مكدس',
286
+ histogramChart: 'الرسم البياني للتوزيع',
287
+ polarChart: 'قطبي',
288
+ radarLine: 'خط الرادار',
289
+ radarArea: 'منطقة الرادار',
290
+ nightingale: 'نايتنجيل',
291
+ radialColumn: 'عمود شعاعي',
292
+ radialBar: 'شريط شعاعي',
293
+ statisticalChart: 'إحصائي',
294
+ boxPlot: 'صندوق مخطط',
295
+ rangeBar: 'شريط المدى',
296
+ rangeArea: 'منطقة المدى',
297
+ hierarchicalChart: 'التسلسل الهرمي',
298
+ treemap: 'خريطة الشجرة',
299
+ sunburst: 'انفجار شمسي',
300
+ specializedChart: 'تخصصي',
301
+ waterfall: 'شلال',
302
+ heatmap: 'خريطة الحرارة',
303
+ combinationChart: 'مزيج',
304
+ columnLineCombo: 'عمود وخط',
305
+ AreaColumnCombo: 'منطقة وعمود',
306
+
307
+ // Charts
308
+ pivotChartTitle: 'رسم محوري',
309
+ rangeChartTitle: 'رسم نطاق',
310
+ settings: 'إعدادات',
311
+ data: 'إعداد البيانات',
312
+ format: 'تخصيص',
313
+ categories: 'الفئات',
314
+ defaultCategory: '(لا شيء)',
315
+ series: 'السلسلة',
316
+ switchCategorySeries: 'تبديل الفئة / السلسلة',
317
+ categoryValues: 'قيم الفئة',
318
+ seriesLabels: 'تسميات السلسلة',
319
+ aggregate: 'مجموعة',
320
+ xyValues: 'قيم إحداثيات X Y',
321
+ paired: 'الوضع المقترن',
322
+ axis: 'محور',
323
+ xAxis: 'المحور الأفقي',
324
+ yAxis: 'المحور الرأسي',
325
+ polarAxis: 'محور قطبي',
326
+ radiusAxis: 'محور نصف القطر',
327
+ navigator: 'مستكشف',
328
+ zoom: 'تكبير',
329
+ animation: 'تحريك',
330
+ crosshair: 'مؤشر',
331
+ color: 'لون',
332
+ thickness: 'سُمك',
333
+ preferredLength: 'الطول المفضل',
334
+ xType: 'نوع X',
335
+ axisType: 'نوع المحور',
336
+ automatic: 'تلقائي',
337
+ category: 'فئة',
338
+ number: 'رقم',
339
+ time: 'وقت',
340
+ timeFormat: 'صيغة الوقت',
341
+ autoRotate: 'تدوير تلقائي',
342
+ labelRotation: 'تدوير التسميات',
343
+ circle: 'دائرة',
344
+ polygon: 'مضلع',
345
+ square: 'مربع',
346
+ cross: 'صليب',
347
+ diamond: 'ماس',
348
+ plus: 'زائد',
349
+ triangle: 'مثلث',
350
+ heart: 'قلب',
351
+ orientation: 'اتجاه',
352
+ fixed: 'ثابت',
353
+ parallel: 'متوازي',
354
+ perpendicular: 'عمودي',
355
+ radiusAxisPosition: 'الموقع',
356
+ ticks: 'علامات',
357
+ gridLines: 'خطوط الشبكة',
358
+ width: 'عرض',
359
+ height: 'ارتفاع',
360
+ length: 'طول',
361
+ padding: 'حشوة',
362
+ spacing: 'تباعد',
363
+ chartStyle: 'نمط الرسم البياني',
364
+ title: 'عنوان',
365
+ chartTitles: 'عناوين الرسوم البيانية',
366
+ chartTitle: 'عنوان الرسم البياني',
367
+ chartSubtitle: 'العنوان الفرعي',
368
+ horizontalAxisTitle: 'عنوان المحور الأفقي',
369
+ verticalAxisTitle: 'عنوان المحور الرأسي',
370
+ polarAxisTitle: 'عنوان المحور القطبي',
371
+ titlePlaceholder: 'عنوان الرسم البياني',
372
+ background: 'خلفية',
373
+ font: 'خط',
374
+ weight: 'وزن',
375
+ top: 'أعلى',
376
+ right: 'يمين',
377
+ bottom: 'أسفل',
378
+ left: 'يسار',
379
+ labels: 'التسميات',
380
+ calloutLabels: 'تسميات التنبيه',
381
+ sectorLabels: 'تسميات القطاع',
382
+ positionRatio: 'نسبة الموقع',
383
+ size: 'حجم',
384
+ shape: 'شكل',
385
+ minSize: 'الحد الأدنى للحجم',
386
+ maxSize: 'الحد الأقصى للحجم',
387
+ legend: 'وسيلة الإيضاح',
388
+ position: 'الموقع',
389
+ markerSize: 'حجم العلامة',
390
+ markerStroke: 'خط العلامة',
391
+ markerPadding: 'حشوة العلامة',
392
+ itemSpacing: 'تباعد العناصر',
393
+ itemPaddingX: 'حشوة العنصر X',
394
+ itemPaddingY: 'حشوة العنصر Y',
395
+ layoutHorizontalSpacing: 'التباعد الأفقي',
396
+ layoutVerticalSpacing: 'التباعد الرأسي',
397
+ strokeWidth: 'سمك الخط',
398
+ offset: 'إزاحة',
399
+ offsets: 'إزاحات',
400
+ tooltips: 'أدوات الإرشاد',
401
+ callout: 'تنبيه',
402
+ markers: 'علامات',
403
+ shadow: 'ظل',
404
+ blur: 'ضبابية',
405
+ xOffset: 'إزاحة X',
406
+ yOffset: 'إزاحة Y',
407
+ lineWidth: 'عرض الخط',
408
+ lineDash: 'خط منقط',
409
+ lineDashOffset: 'إزاحة النقطة',
410
+ scrollingZoom: 'تكبير التمرير',
411
+ scrollingStep: 'خطوة التمرير',
412
+ selectingZoom: 'تكبير التحديد',
413
+ durationMillis: 'المدة (مللي ثانية)',
414
+ crosshairLabel: 'تسمية المؤشر',
415
+ crosshairSnap: 'التقاط المؤشر',
416
+ normal: 'عادي',
417
+ bold: 'غامق',
418
+ italic: 'مائل',
419
+ boldItalic: 'غامق ومائل',
420
+ predefined: 'محدد مسبقًا',
421
+ fillOpacity: 'شفافية التعبئة',
422
+ strokeColor: 'لون الخط',
423
+ strokeOpacity: 'شفافية الخط',
424
+ miniChart: 'رسم صغير',
425
+ histogramBinCount: 'عدد الصناديق',
426
+ connectorLine: 'خط الموصل',
427
+ seriesItems: 'عناصر السلسلة',
428
+ seriesItemType: 'نوع العنصر',
429
+ seriesItemPositive: 'إيجابي',
430
+ seriesItemNegative: 'سلبي',
431
+ seriesItemLabels: 'تسميات العناصر',
432
+ columnGroup: 'عمود',
433
+ barGroup: 'شريط',
434
+ pieGroup: 'فطيرة',
435
+ lineGroup: 'خط',
436
+ scatterGroup: 'X Y (مبعثر)',
437
+ areaGroup: 'مساحة',
438
+ polarGroup: 'قطبي',
439
+ statisticalGroup: 'إحصائي',
440
+ hierarchicalGroup: 'هرمي',
441
+ specializedGroup: 'متخصص',
442
+ combinationGroup: 'مزيج',
443
+ groupedColumnTooltip: 'مجموعة',
444
+ stackedColumnTooltip: 'مكدس',
445
+ normalizedColumnTooltip: '100% مكدس',
446
+ groupedBarTooltip: 'مجموعة',
447
+ stackedBarTooltip: 'مكدس',
448
+ normalizedBarTooltip: '100% مكدس',
449
+ pieTooltip: 'فطيرة',
450
+ donutTooltip: 'دونات',
451
+ lineTooltip: 'خط',
452
+ stackedLineTooltip: 'مكدسة',
453
+ normalizedLineTooltip: 'مكدسة بنسبة 100٪',
454
+ groupedAreaTooltip: 'مساحة مجموعة',
455
+ stackedAreaTooltip: 'مساحة مكدسة',
456
+ normalizedAreaTooltip: '100% مكدسة',
457
+ scatterTooltip: 'مبعثر',
458
+ bubbleTooltip: 'فقاعة',
459
+ histogramTooltip: 'رسم بياني',
460
+ radialColumnTooltip: 'عمود شعاعي',
461
+ radialBarTooltip: 'شريط شعاعي',
462
+ radarLineTooltip: 'خط راداري',
463
+ radarAreaTooltip: 'مساحة رادارية',
464
+ nightingaleTooltip: 'نايتنجيل',
465
+ rangeBarTooltip: 'شريط النطاق',
466
+ rangeAreaTooltip: 'مساحة النطاق',
467
+ boxPlotTooltip: 'مربع مخطط',
468
+ treemapTooltip: 'خريطة الشجرة',
469
+ sunburstTooltip: 'شمس متفجرة',
470
+ waterfallTooltip: 'شلال',
471
+ heatmapTooltip: 'خريطة حرارية',
472
+ columnLineComboTooltip: 'عمود وخط',
473
+ areaColumnComboTooltip: 'مساحة وعمود',
474
+ customComboTooltip: 'مزيج مخصص',
475
+ innerRadius: 'نصف القطر الداخلي',
476
+ startAngle: 'زاوية البداية',
477
+ endAngle: 'زاوية النهاية',
478
+ reverseDirection: 'عكس الاتجاه',
479
+ groupPadding: 'حشوة المجموعة',
480
+ seriesPadding: 'حشوة السلسلة',
481
+ tile: 'بلاطة',
482
+ whisker: 'شعر',
483
+ cap: 'غطاء',
484
+ capLengthRatio: 'نسبة طول الغطاء',
485
+ labelPlacement: 'موضع التسمية',
486
+ inside: 'داخل',
487
+ outside: 'خارج',
488
+ noDataToChart: 'لا توجد بيانات لعرضها في الرسم.',
489
+ pivotChartRequiresPivotMode: 'يتطلب الرسم المحوري تفعيل وضع المحورية.',
490
+ chartSettingsToolbarTooltip: 'قائمة',
491
+ chartLinkToolbarTooltip: 'مرتبط بالشبكة',
492
+ chartUnlinkToolbarTooltip: 'غير مرتبط بالشبكة',
493
+ chartDownloadToolbarTooltip: 'تنزيل الرسم البياني',
494
+ chartMenuToolbarTooltip: 'قائمة',
495
+ chartEdit: 'تحرير الرسم البياني',
496
+ chartAdvancedSettings: 'إعدادات متقدمة',
497
+ chartLink: 'رابط للشبكة',
498
+ chartUnlink: 'إلغاء الرابط من الشبكة',
499
+ chartDownload: 'تنزيل الرسم البياني',
500
+ histogramFrequency: 'التردد',
501
+ seriesChartType: 'نوع رسم السلسلة',
502
+ seriesType: 'نوع السلسلة',
503
+ secondaryAxis: 'محور ثانوي',
504
+ seriesAdd: 'إضافة سلسلة',
505
+ categoryAdd: 'إضافة فئة',
506
+ bar: 'شريط',
507
+ column: 'عمود',
508
+ histogram: 'رسم بياني',
509
+ advancedSettings: 'الإعدادات المتقدمة',
510
+ direction: 'اتجاه',
511
+ horizontal: 'أفقي',
512
+ vertical: 'رأسي',
513
+ seriesGroupType: 'نوع المجموعة',
514
+ groupedSeriesGroupType: 'مجموعة',
515
+ stackedSeriesGroupType: 'مكدس',
516
+ normalizedSeriesGroupType: '100% مكدس',
517
+ legendEnabled: 'ممكّن',
518
+ invalidColor: 'قيمة اللون غير صحيحة',
519
+ groupedColumnFull: 'عمود مجمع',
520
+ stackedColumnFull: 'عمود مكدس',
521
+ normalizedColumnFull: '100% عمود مكدس',
522
+ groupedBarFull: 'شريط مجمع',
523
+ stackedBarFull: 'شريط مكدس',
524
+ normalizedBarFull: '100% شريط مكدس',
525
+ stackedAreaFull: 'مساحة مكدسة',
526
+ normalizedAreaFull: '100% مساحة مكدسة',
527
+ customCombo: 'مزيج مخصص',
528
+ funnel: 'قمع',
529
+ coneFunnel: 'قمع مخروطي',
530
+ pyramid: 'هرم',
531
+ funnelGroup: 'قمع',
532
+ funnelTooltip: 'قمع',
533
+ coneFunnelTooltip: 'قمع مخروطي',
534
+ pyramidTooltip: 'هرم',
535
+ dropOff: 'إسقاط',
536
+ stageLabels: 'تسميات المرحلة',
537
+ reverse: 'عكسي',
538
+ tooltipMode: 'وضع التلميحات',
539
+ tooltipModeSingle: 'فردي',
540
+ tooltipModeShared: 'متعدد',
541
+ tooltipModeCompact: 'مضغوط',
542
+
543
+ // ARIA
544
+ ariaAdvancedFilterBuilderItem: '${variable}. المستوى ${variable}. اضغط ENTER لتعديل.',
545
+ ariaAdvancedFilterBuilderItemValidation: '${variable}. المستوى ${variable}. ${variable} اضغط ENTER لتعديل.',
546
+ ariaAdvancedFilterBuilderList: 'قائمة مُنشئ الفلترة المتقدمة',
547
+ ariaAdvancedFilterBuilderFilterItem: 'شرط الفلترة',
548
+ ariaAdvancedFilterBuilderGroupItem: 'مجموعة الفلترة',
549
+ ariaAdvancedFilterBuilderColumn: 'العمود',
550
+ ariaAdvancedFilterBuilderOption: 'الخيار',
551
+ ariaAdvancedFilterBuilderValueP: 'القيمة',
552
+ ariaAdvancedFilterBuilderJoinOperator: 'العملية الربط',
553
+ ariaAdvancedFilterInput: 'إدخال الفلترة المتقدمة',
554
+ ariaChecked: 'محدد',
555
+ ariaColumn: 'العمود',
556
+ ariaColumnGroup: 'مجموعة الأعمدة',
557
+ ariaColumnFiltered: 'العمود مفلتر',
558
+ ariaColumnSelectAll: 'تبديل ظهور كل الأعمدة',
559
+ ariaDateFilterInput: 'إدخال فلتر التاريخ',
560
+ ariaDefaultListName: 'قائمة',
561
+ ariaFilterColumnsInput: 'إدخال فلترة الأعمدة',
562
+ ariaFilterFromValue: 'الفلترة من القيمة',
563
+ ariaFilterInput: 'إدخال الفلترة',
564
+ ariaFilterList: 'قائمة الفلترة',
565
+ ariaFilterToValue: 'الفلترة إلى القيمة',
566
+ ariaFilterValue: 'قيمة الفلترة',
567
+ ariaFilterMenuOpen: 'فتح قائمة الفلترة',
568
+ ariaFilteringOperator: 'مشغل الفلترة',
569
+ ariaHidden: 'مخفي',
570
+ ariaIndeterminate: 'غير محدد',
571
+ ariaInputEditor: 'محرر الإدخال',
572
+ ariaMenuColumn: 'اضغط ALT DOWN لفتح قائمة العمود',
573
+ ariaFilterColumn: 'اضغط CTRL ENTER لفتح الفلترة',
574
+ ariaRowDeselect: 'اضغط SPACE لإلغاء تحديد هذا الصف',
575
+ ariaHeaderSelection: 'عمود مع اختيار الرؤوس',
576
+ ariaSelectAllCells: 'اضغط على المسافة لاختيار كل الخلايا',
577
+ ariaRowSelectAll: 'اضغط Space لتبديل تحديد كل الصفوف',
578
+ ariaRowToggleSelection: 'اضغط Space لتبديل تحديد الصف',
579
+ ariaRowSelect: 'اضغط SPACE لتحديد هذا الصف',
580
+ ariaRowSelectionDisabled: 'تحديد الصف معطل لهذا الصف',
581
+ ariaSearch: 'بحث',
582
+ ariaSortableColumn: 'اضغط ENTER لفرز',
583
+ ariaToggleVisibility: 'اضغط SPACE لتبديل الرؤية',
584
+ ariaToggleCellValue: 'اضغط SPACE لتبديل قيمة الخلية',
585
+ ariaUnchecked: 'غير محدد',
586
+ ariaVisible: 'مرئي',
587
+ ariaSearchFilterValues: 'قيمة فلترة البحث',
588
+ ariaPageSizeSelectorLabel: 'حجم الصفحة',
589
+ ariaChartMenuClose: 'إغلاق قائمة تحرير الرسم البياني',
590
+ ariaChartSelected: 'محدد',
591
+ ariaSkeletonCellLoadingFailed: 'فشل تحميل الصف',
592
+ ariaSkeletonCellLoading: 'جاري تحميل بيانات الصف',
593
+ ariaDeferSkeletonCellLoading: 'الخلية قيد التحميل',
594
+
595
+ // ARIA for Batch Edit
596
+ ariaPendingChange: 'التغيير قيد الانتظار',
597
+
598
+ // ARIA Labels for Drop Zones
599
+ ariaRowGroupDropZonePanelLabel: 'مجموعات الصفوف',
600
+ ariaValuesDropZonePanelLabel: 'القيم',
601
+ ariaPivotDropZonePanelLabel: 'تسميات الأعمدة',
602
+ ariaDropZoneColumnComponentDescription: 'اضغط على DELETE للإزالة',
603
+ ariaDropZoneColumnValueItemDescription: 'اضغط على ENTER لتغيير نوع التجميع',
604
+ ariaDropZoneColumnGroupItemDescription: 'اضغط على ENTER للفرز',
605
+
606
+ // used for aggregate drop zone, format: {aggregation}{ariaDropZoneColumnComponentAggFuncSeparator}{column name}
607
+ ariaDropZoneColumnComponentAggFuncSeparator: ' من ',
608
+ ariaDropZoneColumnComponentSortAscending: 'تصاعدي',
609
+ ariaDropZoneColumnComponentSortDescending: 'تنازلي',
610
+ ariaLabelDialog: 'حوار',
611
+ ariaLabelColumnMenu: 'قائمة الأعمدة',
612
+ ariaLabelColumnFilter: 'تصفية العمود',
613
+ ariaLabelSelectField: 'اختيار الحقل',
614
+
615
+ // Cell Editor
616
+ ariaValidationErrorPrefix: 'تحقق من صحة محرر الخلية',
617
+ ariaLabelLoadingContextMenu: 'تحميل قائمة السياق',
618
+
619
+ // aria labels for rich select
620
+ ariaLabelRichSelectField: 'حقل اختيار متقدم',
621
+ ariaLabelRichSelectToggleSelection: 'اضغط SPACE لتغيير التحديد',
622
+ ariaLabelRichSelectDeselectAllItems: 'اضغط DELETE لإلغاء تحديد كل العناصر',
623
+ ariaLabelRichSelectDeleteSelection: 'اضغط DELETE لإلغاء تحديد العنصر',
624
+ ariaLabelTooltip: 'تلميح',
625
+ ariaLabelContextMenu: 'قائمة السياق',
626
+ ariaLabelSubMenu: 'القائمة الفرعية',
627
+ ariaLabelAggregationFunction: 'دالة التجميع',
628
+ ariaLabelAdvancedFilterAutocomplete: 'الإكمال التلقائي للفلاتر المتقدمة',
629
+ ariaLabelAdvancedFilterBuilderAddField: 'إضافة حقل منشئ الفلاتر المتقدمة',
630
+ ariaLabelAdvancedFilterBuilderColumnSelectField: 'حقل اختيار الأعمدة في منشئ الفلاتر المتقدمة',
631
+ ariaLabelAdvancedFilterBuilderOptionSelectField: 'حقل اختيار الخيارات في منشئ الفلاتر المتقدمة',
632
+ ariaLabelAdvancedFilterBuilderJoinSelectField: 'حقل اختيار مشغل الربط في منشئ الفلاتر المتقدمة',
633
+
634
+ // ARIA Labels for the Side Bar
635
+ ariaColumnPanelList: 'قائمة الأعمدة',
636
+ ariaFilterPanelList: 'قائمة المرشحات',
637
+
638
+ // ARIA labels for new Filters Tool Panel
639
+ ariaLabelAddFilterField: 'إضافة حقل الفلتر',
640
+ ariaLabelFilterCardDelete: 'حذف الفلتر',
641
+ ariaLabelFilterCardHasEdits: 'يوجد تعديلات',
642
+
643
+ // Number Format (Status Bar, Pagination Panel)
644
+ thousandSeparator: '،',
645
+ decimalSeparator: '.',
646
+
647
+ // Data types
648
+ true: 'صح',
649
+ false: 'خطأ',
650
+ invalidDate: 'تاريخ غير صالح',
651
+ invalidNumber: 'رقم غير صالح',
652
+ january: 'يناير',
653
+ february: 'فبراير',
654
+ march: 'مارس',
655
+ april: 'أبريل',
656
+ may: 'مايو',
657
+ june: 'يونيو',
658
+ july: 'يوليو',
659
+ august: 'أغسطس',
660
+ september: 'سبتمبر',
661
+ october: 'أكتوبر',
662
+ november: 'نوفمبر',
663
+ december: 'ديسمبر',
664
+
665
+ // Time formats
666
+ timeFormatSlashesDDMMYYYY: 'DD/MM/YYYY',
667
+ timeFormatSlashesMMDDYYYY: 'MM/DD/YYYY',
668
+ timeFormatSlashesDDMMYY: 'DD/MM/YY',
669
+ timeFormatSlashesMMDDYY: 'MM/DD/YY',
670
+ timeFormatDotsDDMYY: 'DD.M.YY',
671
+ timeFormatDotsMDDYY: 'M.DD.YY',
672
+ timeFormatDashesYYYYMMDD: 'YYYY-MM-DD',
673
+ timeFormatSpacesDDMMMMYYYY: 'DD MMMM YYYY',
674
+ timeFormatHHMMSS: 'ساعات:دقائق:ثواني',
675
+ timeFormatHHMMSSAmPm: 'ساعات:دقائق:ثواني ص/م',
676
+ };