chuijs 4.0.2 → 4.0.4
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 +597 -0
- package/README.md +43 -644
- package/framework/appLayout/default/chui_app_layout.js +602 -496
- package/framework/appLayout/default/global_style.css +288 -97
- package/framework/appLayout/default/main_theme_style.css +188 -101
- package/framework/components/chui_accordion/accordion.js +38 -35
- package/framework/components/chui_accordion/styles.css +13 -12
- package/framework/components/chui_action_sheet/action_sheet.js +93 -64
- package/framework/components/chui_action_sheet/styles.css +12 -5
- package/framework/components/chui_actions_bar/actions_bar.js +338 -0
- package/framework/components/chui_actions_bar/styles.css +139 -0
- package/framework/components/chui_affix/affix.js +16 -11
- package/framework/components/chui_affix/styles.css +5 -0
- package/framework/components/chui_alert/alert.js +34 -19
- package/framework/components/chui_alert/styles.css +7 -0
- package/framework/components/chui_avatar/avatar.js +36 -35
- package/framework/components/chui_avatar/styles.css +1 -1
- package/framework/components/chui_avatar_group/avatar_group.js +25 -23
- package/framework/components/chui_avatar_group/styles.css +1 -1
- package/framework/components/chui_backtop/backtop.js +60 -21
- package/framework/components/chui_backtop/styles.css +21 -0
- package/framework/components/chui_badge/badge.js +30 -28
- package/framework/components/chui_badge/styles.css +6 -6
- package/framework/components/chui_banner/banner.js +222 -0
- package/framework/components/chui_banner/styles.css +170 -0
- package/framework/components/chui_breadcrumb/breadcrumb.js +15 -13
- package/framework/components/chui_breadcrumb/styles.css +1 -1
- package/framework/components/chui_button/button.js +52 -36
- package/framework/components/chui_button/styles.css +7 -7
- package/framework/components/chui_calendar/calendar.js +18 -16
- package/framework/components/chui_card/card.js +52 -32
- package/framework/components/chui_card_scroll/card_scroll.js +169 -0
- package/framework/components/chui_card_scroll/styles.css +86 -0
- package/framework/components/chui_chat/chat.js +140 -79
- package/framework/components/chui_chat/styles.css +18 -7
- package/framework/components/chui_clipboard_history/clipboard_history.js +53 -39
- package/framework/components/chui_clipboard_history/styles.css +13 -9
- package/framework/components/chui_code/code.js +10 -10
- package/framework/components/chui_code/styles.css +4 -4
- package/framework/components/chui_code_editor/code_editor.js +73 -57
- package/framework/components/chui_code_editor/styles.css +6 -5
- package/framework/components/chui_command_palette/command_palette.js +87 -64
- package/framework/components/chui_command_palette/styles.css +5 -5
- package/framework/components/chui_console/console.js +13 -13
- package/framework/components/chui_console/styles.css +6 -3
- package/framework/components/chui_content_block/content_block.js +35 -21
- package/framework/components/chui_content_block/styles.css +2 -2
- package/framework/components/chui_context_menu/context_menu.js +171 -58
- package/framework/components/chui_context_menu/styles.css +82 -8
- package/framework/components/chui_custom_element/custom_element.js +25 -18
- package/framework/components/chui_data_grid/data_grid.js +633 -471
- package/framework/components/chui_data_grid/styles.css +24 -22
- package/framework/components/chui_descriptions/descriptions.js +34 -17
- package/framework/components/chui_descriptions/styles.css +1 -1
- package/framework/components/chui_details/details.js +42 -36
- package/framework/components/chui_details/styles.css +12 -11
- package/framework/components/chui_diff_viewer/diff_viewer.js +172 -147
- package/framework/components/chui_diff_viewer/styles.css +10 -10
- package/framework/components/chui_divider/divider.js +19 -17
- package/framework/components/chui_divider/styles.css +2 -2
- package/framework/components/chui_drawer/drawer.js +63 -38
- package/framework/components/chui_drawer/styles.css +18 -4
- package/framework/components/chui_drop_zone/drop_zone.js +37 -27
- package/framework/components/chui_drop_zone/styles.css +10 -6
- package/framework/components/chui_empty_state/empty_state.js +20 -15
- package/framework/components/chui_fieldset/fieldset.js +40 -23
- package/framework/components/chui_fieldset/styles.css +6 -6
- package/framework/components/chui_file_explorer/file_explorer.js +260 -189
- package/framework/components/chui_file_explorer/styles.css +8 -7
- package/framework/components/chui_form/form.js +40 -28
- package/framework/components/chui_form/styles.css +1 -1
- package/framework/components/chui_gantt/gantt.js +102 -78
- package/framework/components/chui_gantt/styles.css +5 -5
- package/framework/components/chui_graphs/graphs.js +376 -239
- package/framework/components/chui_graphs/styles.css +27 -6
- package/framework/components/chui_hero/hero.js +98 -37
- package/framework/components/chui_hero/styles.css +176 -7
- package/framework/components/chui_html_block/html_block.js +8 -8
- package/framework/components/chui_html_block/styles.css +3 -3
- package/framework/components/chui_hx/hx.js +3 -3
- package/framework/components/chui_hx/styles.css +13 -6
- package/framework/components/chui_icons/icons.js +2115 -2115
- package/framework/components/chui_icons/styles.css +4 -3
- package/framework/components/chui_inputs/chui_check_box/check_box.js +31 -19
- package/framework/components/chui_inputs/chui_check_box/styles.css +30 -21
- package/framework/components/chui_inputs/chui_chips/chips.js +141 -70
- package/framework/components/chui_inputs/chui_chips/styles.css +32 -7
- package/framework/components/chui_inputs/chui_color_picker/color_picker.js +55 -38
- package/framework/components/chui_inputs/chui_color_picker/styles.css +7 -7
- package/framework/components/chui_inputs/chui_combo_box/combo_box.js +127 -109
- package/framework/components/chui_inputs/chui_combo_box/styles.css +23 -21
- package/framework/components/chui_inputs/chui_date/date.js +161 -127
- package/framework/components/chui_inputs/chui_date/styles.css +20 -19
- package/framework/components/chui_inputs/chui_date_range/date_range.js +61 -50
- package/framework/components/chui_inputs/chui_date_range/styles.css +3 -3
- package/framework/components/chui_inputs/chui_datetime/datetime.js +47 -39
- package/framework/components/chui_inputs/chui_datetime/styles.css +3 -3
- package/framework/components/chui_inputs/chui_email/email.js +48 -36
- package/framework/components/chui_inputs/chui_email/styles.css +11 -11
- package/framework/components/chui_inputs/chui_file/file.js +71 -44
- package/framework/components/chui_inputs/chui_file/styles.css +23 -19
- package/framework/components/chui_inputs/chui_hotkey/hotkey.js +101 -76
- package/framework/components/chui_inputs/chui_hotkey/styles.css +6 -6
- package/framework/components/chui_inputs/chui_masked/masked.js +83 -72
- package/framework/components/chui_inputs/chui_masked/styles.css +5 -5
- package/framework/components/chui_inputs/chui_mention/mention.js +87 -40
- package/framework/components/chui_inputs/chui_mention/styles.css +14 -8
- package/framework/components/chui_inputs/chui_multi_combo_box/multi_combo_box.js +242 -212
- package/framework/components/chui_inputs/chui_multi_combo_box/styles.css +23 -15
- package/framework/components/chui_inputs/chui_number/number.js +84 -70
- package/framework/components/chui_inputs/chui_number/styles.css +13 -13
- package/framework/components/chui_inputs/chui_otp/otp.js +71 -62
- package/framework/components/chui_inputs/chui_otp/styles.css +5 -5
- package/framework/components/chui_inputs/chui_password/password.js +72 -56
- package/framework/components/chui_inputs/chui_password/styles.css +15 -15
- package/framework/components/chui_inputs/chui_radio_button/radio_button.js +37 -25
- package/framework/components/chui_inputs/chui_radio_button/styles.css +22 -22
- package/framework/components/chui_inputs/chui_rating/rating.js +54 -50
- package/framework/components/chui_inputs/chui_rating/styles.css +3 -3
- package/framework/components/chui_inputs/chui_select_box/select_box.js +132 -108
- package/framework/components/chui_inputs/chui_select_box/styles.css +21 -21
- package/framework/components/chui_inputs/chui_slider/slider.js +41 -38
- package/framework/components/chui_inputs/chui_slider/styles.css +7 -5
- package/framework/components/chui_inputs/chui_text/styles.css +14 -14
- package/framework/components/chui_inputs/chui_text/text.js +69 -52
- package/framework/components/chui_inputs/chui_text_area/styles.css +14 -14
- package/framework/components/chui_inputs/chui_text_area/text_area.js +59 -36
- package/framework/components/chui_inputs/chui_time/styles.css +18 -20
- package/framework/components/chui_inputs/chui_time/time.js +71 -49
- package/framework/components/chui_inputs/chui_toggle/styles.css +13 -6
- package/framework/components/chui_inputs/chui_toggle/toggle.js +27 -27
- package/framework/components/chui_json_editor/json_editor.js +137 -127
- package/framework/components/chui_json_editor/styles.css +5 -5
- package/framework/components/chui_json_viewer/json_viewer.js +133 -114
- package/framework/components/chui_json_viewer/styles.css +9 -8
- package/framework/components/chui_kanban/kanban.js +78 -60
- package/framework/components/chui_kanban/styles.css +8 -4
- package/framework/components/chui_kbd/kbd.js +12 -10
- package/framework/components/chui_kbd/styles.css +1 -1
- package/framework/components/chui_label/label.js +31 -29
- package/framework/components/chui_label/styles.css +3 -3
- package/framework/components/chui_link/link.js +36 -29
- package/framework/components/chui_link/styles.css +11 -4
- package/framework/components/chui_list/list.js +42 -38
- package/framework/components/chui_list/styles.css +4 -3
- package/framework/components/chui_markdown_editor/markdown_editor.js +125 -109
- package/framework/components/chui_markdown_editor/styles.css +5 -5
- package/framework/components/chui_media/audio.js +457 -364
- package/framework/components/chui_media/audio_styles.css +74 -37
- package/framework/components/chui_media/image.js +99 -64
- package/framework/components/chui_media/image_compare.js +86 -55
- package/framework/components/chui_media/image_compare_styles.css +5 -5
- package/framework/components/chui_media/image_styles.css +4 -4
- package/framework/components/chui_media/video.js +264 -171
- package/framework/components/chui_media/video_styles.css +57 -24
- package/framework/components/chui_menu_bar/menu_bar.js +67 -65
- package/framework/components/chui_menu_bar/styles.css +14 -12
- package/framework/components/chui_message_bar/message_bar.js +551 -0
- package/framework/components/chui_message_bar/styles.css +248 -0
- package/framework/components/chui_modal/modal.js +81 -56
- package/framework/components/chui_modal/styles.css +3 -2
- package/framework/components/chui_notification/notification.js +107 -69
- package/framework/components/chui_notification/notification_download.js +28 -77
- package/framework/components/chui_notification/notification_download_card.js +115 -0
- package/framework/components/chui_notification/notification_download_progress.css +5 -4
- package/framework/components/chui_notification/notification_download_progress.js +73 -105
- package/framework/components/chui_notification/notification_update.js +44 -37
- package/framework/components/chui_notification/status_plate.css +3 -3
- package/framework/components/chui_notification/status_plate.js +2 -2
- package/framework/components/chui_notification/styles.css +6 -1
- package/framework/components/chui_notification/styles_download.css +2 -2
- package/framework/components/chui_notification/styles_update.css +3 -3
- package/framework/components/chui_org_chart/org_chart.js +101 -62
- package/framework/components/chui_org_chart/styles.css +2 -2
- package/framework/components/chui_pagination/pagination.js +65 -30
- package/framework/components/chui_pagination/styles.css +1 -1
- package/framework/components/chui_paragraph/paragraph.js +2 -2
- package/framework/components/chui_paragraph/styles.css +3 -3
- package/framework/components/chui_popover/popover.js +77 -50
- package/framework/components/chui_popover/styles.css +1 -1
- package/framework/components/chui_popups/popups.js +210 -181
- package/framework/components/chui_popups/styles.css +7 -7
- package/framework/components/chui_print_button/print_button.js +48 -33
- package/framework/components/chui_progress_bar/progress_bar.js +49 -19
- package/framework/components/chui_progress_bar/styles.css +6 -6
- package/framework/components/chui_progress_ring/progress_ring.js +32 -30
- package/framework/components/chui_progress_ring/styles.css +1 -1
- package/framework/components/chui_qrcode/qrcode.js +85 -41
- package/framework/components/chui_query_builder/query_builder.js +263 -170
- package/framework/components/chui_query_builder/styles.css +4 -4
- package/framework/components/chui_radio_group/radio_group.js +36 -26
- package/framework/components/chui_radio_group/styles.css +2 -2
- package/framework/components/chui_result/result.js +41 -31
- package/framework/components/chui_result/styles.css +3 -3
- package/framework/components/chui_scheduler/scheduler.js +126 -104
- package/framework/components/chui_scheduler/styles.css +11 -7
- package/framework/components/chui_screen_spinner/screen_spinner.js +167 -0
- package/framework/components/chui_screen_spinner/styles.css +49 -0
- package/framework/components/chui_segmented_control/segmented_control.js +90 -27
- package/framework/components/chui_segmented_control/styles.css +32 -6
- package/framework/components/chui_settings/settings.js +160 -87
- package/framework/components/chui_settings/styles.css +4 -4
- package/framework/components/chui_shortcut_help/shortcut_help.js +82 -61
- package/framework/components/chui_sidebar_nav/sidebar_nav.js +132 -53
- package/framework/components/chui_sidebar_nav/styles.css +9 -3
- package/framework/components/chui_skeleton/skeleton.js +29 -24
- package/framework/components/chui_slideshow/slideshow.js +122 -103
- package/framework/components/chui_slideshow/styles.css +22 -16
- package/framework/components/chui_spinner/spinner.js +17 -17
- package/framework/components/chui_spinner/styles.css +0 -1
- package/framework/components/chui_split_button/split_button.js +53 -30
- package/framework/components/chui_split_button/styles.css +22 -6
- package/framework/components/chui_splitter/splitter.js +46 -39
- package/framework/components/chui_splitter/styles.css +2 -2
- package/framework/components/chui_statistic/statistic.js +111 -84
- package/framework/components/chui_status_bar/status_bar.js +11 -9
- package/framework/components/chui_status_bar/styles.css +2 -2
- package/framework/components/chui_stepper/stepper.js +230 -54
- package/framework/components/chui_stepper/styles.css +79 -14
- package/framework/components/chui_sticky_bar/sticky_bar.js +53 -17
- package/framework/components/chui_sticky_bar/styles.css +11 -7
- package/framework/components/chui_tabs/chui_tabs.js +100 -46
- package/framework/components/chui_tabs/styles.css +43 -15
- package/framework/components/chui_text_editor/styles.css +24 -23
- package/framework/components/chui_text_editor/text_editor.js +103 -79
- package/framework/components/chui_text_editor/text_editor_panel.js +428 -367
- package/framework/components/chui_theme_toggle/theme_toggle.js +46 -25
- package/framework/components/chui_timeline/styles.css +3 -1
- package/framework/components/chui_timeline/timeline.js +14 -12
- package/framework/components/chui_toast_queue/styles.css +11 -11
- package/framework/components/chui_toast_queue/toast_queue.js +82 -73
- package/framework/components/chui_toolbar/styles.css +2 -2
- package/framework/components/chui_toolbar/toolbar.js +20 -13
- package/framework/components/chui_tooltip/styles.css +2 -2
- package/framework/components/chui_tooltip/tooltip.js +40 -27
- package/framework/components/chui_tour/styles.css +12 -7
- package/framework/components/chui_tour/tour.js +132 -98
- package/framework/components/chui_transfer/styles.css +8 -7
- package/framework/components/chui_transfer/transfer.js +143 -123
- package/framework/components/chui_tree_table/styles.css +4 -4
- package/framework/components/chui_tree_table/tree_table.js +88 -74
- package/framework/components/chui_tree_view/styles.css +14 -10
- package/framework/components/chui_tree_view/tree_view.js +298 -253
- package/framework/components/chui_user_bar/styles.css +145 -0
- package/framework/components/chui_user_bar/user_bar.js +402 -0
- package/framework/components/chui_user_list_bar/styles.css +173 -0
- package/framework/components/chui_user_list_bar/user_list_bar.js +485 -0
- package/framework/components/chui_watermark/watermark.js +41 -33
- package/framework/components/chui_webview/styles.css +2 -2
- package/framework/components/chui_webview/webview.js +64 -52
- package/framework/components/chui_write_bar/styles.css +172 -0
- package/framework/components/chui_write_bar/write_bar.js +320 -0
- package/framework/main_window.js +1234 -0
- package/framework/modules/chui_a11y/chui_a11y.js +153 -123
- package/framework/modules/chui_animations/animations.js +105 -43
- package/framework/modules/chui_animations/motion.js +120 -0
- package/framework/modules/chui_animations/styles.css +37 -4
- package/framework/modules/chui_bridge/preload.js +36 -25
- package/framework/modules/chui_functions.js +69 -63
- package/framework/modules/chui_highlight/chui_highlight.js +25 -22
- package/framework/modules/chui_highlight/styles.css +13 -10
- package/framework/modules/chui_i18n/chui_i18n.js +12 -10
- package/framework/modules/chui_i18n/locales/a11y.js +5 -5
- package/framework/modules/chui_i18n/locales/app_layout.js +5 -5
- package/framework/modules/chui_i18n/locales/calendar.js +3 -3
- package/framework/modules/chui_i18n/locales/common.js +3 -3
- package/framework/modules/chui_i18n/locales/data.js +36 -26
- package/framework/modules/chui_i18n/locales/editors.js +40 -13
- package/framework/modules/chui_i18n/locales/feedback.js +65 -3
- package/framework/modules/chui_i18n/locales/forms.js +8 -8
- package/framework/modules/chui_i18n/locales/graphics.js +8 -8
- package/framework/modules/chui_i18n/locales/media.js +4 -4
- package/framework/modules/chui_i18n/locales/navigation.js +12 -8
- package/framework/modules/chui_i18n/locales/validate.js +3 -3
- package/framework/modules/chui_json/chui_json.js +11 -11
- package/framework/modules/chui_layout/chui_layout.js +12 -10
- package/framework/modules/chui_logger/chui_logger.js +47 -28
- package/framework/modules/chui_page/page.js +39 -33
- package/framework/modules/chui_palette/palette.js +61 -0
- package/framework/modules/chui_qr/chui_qr.js +179 -88
- package/framework/modules/chui_scrollbar/chui_scrollbar.js +79 -68
- package/framework/modules/chui_scrollbar/styles.css +4 -2
- package/framework/modules/chui_services/chui_channels.js +27 -13
- package/framework/modules/chui_services/chui_services.js +47 -39
- package/framework/modules/chui_services/desktop.js +108 -101
- package/framework/modules/chui_sortable/chui_sortable.js +33 -28
- package/framework/modules/chui_validate/chui_validate.js +10 -7
- package/framework/tray_bar/chui_menu_items.js +136 -46
- package/index.d.ts +5046 -0
- package/index.js +199 -1254
- package/package.json +81 -68
- package/framework/components/telegram_bot/chui_telegram_bot.js +0 -184
|
@@ -69,7 +69,12 @@ module.exports = {
|
|
|
69
69
|
"data.orgChartEmpty": "В схеме нет сотрудников",
|
|
70
70
|
"data.orgChartExpanded": "Развёрнуто: {name}, подчинённых {count}",
|
|
71
71
|
"data.orgChartCollapsed": "Свёрнуто: {name}, скрыто подчинённых {count}",
|
|
72
|
-
"data.orgChartReports": {
|
|
72
|
+
"data.orgChartReports": {
|
|
73
|
+
one: "{count} подчинённый",
|
|
74
|
+
few: "{count} подчинённых",
|
|
75
|
+
many: "{count} подчинённых",
|
|
76
|
+
other: "{count} подчинённых",
|
|
77
|
+
},
|
|
73
78
|
|
|
74
79
|
"transfer.title": "Перенос значений",
|
|
75
80
|
"transfer.available": "Доступно",
|
|
@@ -154,7 +159,12 @@ module.exports = {
|
|
|
154
159
|
"queryBuilder.yes": "Да",
|
|
155
160
|
"queryBuilder.no": "Нет",
|
|
156
161
|
"queryBuilder.unset": "Не выбрано",
|
|
157
|
-
"queryBuilder.rulesCount": {
|
|
162
|
+
"queryBuilder.rulesCount": {
|
|
163
|
+
one: "{count} условие",
|
|
164
|
+
few: "{count} условия",
|
|
165
|
+
many: "{count} условий",
|
|
166
|
+
other: "{count} условия",
|
|
167
|
+
},
|
|
158
168
|
"queryBuilder.operator.equals": "равно",
|
|
159
169
|
"queryBuilder.operator.notEquals": "не равно",
|
|
160
170
|
"queryBuilder.operator.contains": "содержит",
|
|
@@ -166,7 +176,7 @@ module.exports = {
|
|
|
166
176
|
"queryBuilder.operator.less": "меньше",
|
|
167
177
|
"queryBuilder.operator.lessOrEqual": "меньше или равно",
|
|
168
178
|
"queryBuilder.operator.isEmpty": "пусто",
|
|
169
|
-
"queryBuilder.operator.isNotEmpty": "не пусто"
|
|
179
|
+
"queryBuilder.operator.isNotEmpty": "не пусто",
|
|
170
180
|
},
|
|
171
181
|
en: {
|
|
172
182
|
"data.empty": "No data",
|
|
@@ -199,28 +209,28 @@ module.exports = {
|
|
|
199
209
|
"dataGrid.groupTitle": "{key} — rows: {count}",
|
|
200
210
|
"dataGrid.columns": "Columns",
|
|
201
211
|
"dataGrid.showAll": "Show all",
|
|
202
|
-
"dataGrid.columnMove":
|
|
203
|
-
"dataGrid.columnPlace":
|
|
212
|
+
"dataGrid.columnMove": 'Moving column "{title}"',
|
|
213
|
+
"dataGrid.columnPlace": 'Column "{title}" is at position {place} of {total}',
|
|
204
214
|
"dataGrid.emptyValue": "empty",
|
|
205
215
|
"dataGrid.yes": "yes",
|
|
206
216
|
"dataGrid.no": "no",
|
|
207
|
-
"dataGrid.editStart":
|
|
208
|
-
"dataGrid.enterNumber": "
|
|
209
|
-
"dataGrid.notNumber": "
|
|
210
|
-
"dataGrid.editCanceled": "
|
|
217
|
+
"dataGrid.editStart": 'Editing: "{title}", row {row}',
|
|
218
|
+
"dataGrid.enterNumber": '"{title}": enter a number',
|
|
219
|
+
"dataGrid.notNumber": '"{title}": "{text}" is not a number',
|
|
220
|
+
"dataGrid.editCanceled": '"{title}": editing canceled',
|
|
211
221
|
"dataGrid.editCanceledReason": "{message} — editing canceled",
|
|
212
|
-
"dataGrid.saved":
|
|
222
|
+
"dataGrid.saved": 'Saved: "{title}" = {value}',
|
|
213
223
|
"dataGrid.loadedRows": "Rows loaded: {shown}",
|
|
214
224
|
"dataGrid.loadedRowsOf": "Rows loaded: {shown} of {total}",
|
|
215
|
-
"dataGrid.filterActive":
|
|
216
|
-
"dataGrid.filterSummary":
|
|
225
|
+
"dataGrid.filterActive": 'filter "{filter}"',
|
|
226
|
+
"dataGrid.filterSummary": 'Filter "{filter}": {shown} of {total}',
|
|
217
227
|
"dataGrid.rowsSummary": "Rows: {shown}",
|
|
218
228
|
"dataGrid.groupsSummary": "groups: {count}",
|
|
219
|
-
"dataGrid.sortSummary":
|
|
229
|
+
"dataGrid.sortSummary": 'sorted by "{title}" {direction}',
|
|
220
230
|
|
|
221
|
-
"table.sortBy":
|
|
231
|
+
"table.sortBy": 'Sort by "{head}"',
|
|
222
232
|
"table.filter": "Filter",
|
|
223
|
-
"table.filterBy":
|
|
233
|
+
"table.filterBy": 'Filter by "{title}"',
|
|
224
234
|
"table.filterFound": "Filter: {found} of {total} found",
|
|
225
235
|
"table.selectedRows": "Rows selected: {count}",
|
|
226
236
|
|
|
@@ -230,23 +240,23 @@ module.exports = {
|
|
|
230
240
|
"data.orgChartEmpty": "No employees in the chart",
|
|
231
241
|
"data.orgChartExpanded": "Expanded: {name}, {count} reports",
|
|
232
242
|
"data.orgChartCollapsed": "Collapsed: {name}, {count} reports hidden",
|
|
233
|
-
"data.orgChartReports": {one: "{count} report", other: "{count} reports"},
|
|
243
|
+
"data.orgChartReports": { one: "{count} report", other: "{count} reports" },
|
|
234
244
|
|
|
235
245
|
"transfer.title": "Transfer values",
|
|
236
246
|
"transfer.available": "Available",
|
|
237
247
|
"transfer.chosen": "Selected",
|
|
238
|
-
"transfer.addMarked":
|
|
239
|
-
"transfer.removeMarked":
|
|
248
|
+
"transfer.addMarked": 'Add marked to "{title}"',
|
|
249
|
+
"transfer.removeMarked": 'Remove marked from "{title}"',
|
|
240
250
|
"transfer.nothingChosen": "Nothing selected",
|
|
241
251
|
"transfer.nothingMarked": "Nothing marked",
|
|
242
252
|
"transfer.search": "Search",
|
|
243
|
-
"transfer.searchIn":
|
|
244
|
-
"transfer.clearSearchIn":
|
|
253
|
+
"transfer.searchIn": 'Search in "{title}"',
|
|
254
|
+
"transfer.clearSearchIn": 'Clear search in "{title}"',
|
|
245
255
|
"transfer.selectMin": "Select at least {min}",
|
|
246
256
|
"transfer.selectMax": "Select at most {max}",
|
|
247
257
|
"transfer.maxReached": "You can select at most {max}",
|
|
248
|
-
"transfer.emptyList":
|
|
249
|
-
"transfer.moved":
|
|
258
|
+
"transfer.emptyList": 'The list "{title}" is empty',
|
|
259
|
+
"transfer.moved": 'Moved to "{title}": {titles}. Selected {count} of {total}',
|
|
250
260
|
|
|
251
261
|
"treeTable.label": "Tree table",
|
|
252
262
|
"treeTable.shownRows": "Rows shown: {shown} of {total}",
|
|
@@ -315,7 +325,7 @@ module.exports = {
|
|
|
315
325
|
"queryBuilder.yes": "Yes",
|
|
316
326
|
"queryBuilder.no": "No",
|
|
317
327
|
"queryBuilder.unset": "Not selected",
|
|
318
|
-
"queryBuilder.rulesCount": {one: "{count} condition", other: "{count} conditions"},
|
|
328
|
+
"queryBuilder.rulesCount": { one: "{count} condition", other: "{count} conditions" },
|
|
319
329
|
"queryBuilder.operator.equals": "equals",
|
|
320
330
|
"queryBuilder.operator.notEquals": "does not equal",
|
|
321
331
|
"queryBuilder.operator.contains": "contains",
|
|
@@ -327,6 +337,6 @@ module.exports = {
|
|
|
327
337
|
"queryBuilder.operator.less": "less than",
|
|
328
338
|
"queryBuilder.operator.lessOrEqual": "less than or equal",
|
|
329
339
|
"queryBuilder.operator.isEmpty": "is empty",
|
|
330
|
-
"queryBuilder.operator.isNotEmpty": "is not empty"
|
|
331
|
-
}
|
|
332
|
-
};
|
|
340
|
+
"queryBuilder.operator.isNotEmpty": "is not empty",
|
|
341
|
+
},
|
|
342
|
+
};
|
|
@@ -104,10 +104,30 @@ module.exports = {
|
|
|
104
104
|
"jsonViewer.dataTree": "{name}: дерево данных",
|
|
105
105
|
"jsonViewer.expanded": "Развёрнуто: {name}",
|
|
106
106
|
"jsonViewer.collapsed": "Свёрнуто: {name}",
|
|
107
|
-
"jsonViewer.elements": {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
107
|
+
"jsonViewer.elements": {
|
|
108
|
+
one: "{count} элемент",
|
|
109
|
+
few: "{count} элемента",
|
|
110
|
+
many: "{count} элементов",
|
|
111
|
+
other: "{count} элемента",
|
|
112
|
+
},
|
|
113
|
+
"jsonViewer.properties": {
|
|
114
|
+
one: "{count} свойство",
|
|
115
|
+
few: "{count} свойства",
|
|
116
|
+
many: "{count} свойств",
|
|
117
|
+
other: "{count} свойства",
|
|
118
|
+
},
|
|
119
|
+
"jsonViewer.found": {
|
|
120
|
+
one: "Найден {count} узел",
|
|
121
|
+
few: "Найдено {count} узла",
|
|
122
|
+
many: "Найдено {count} узлов",
|
|
123
|
+
other: "Найдено {count} узла",
|
|
124
|
+
},
|
|
125
|
+
"jsonViewer.visible": {
|
|
126
|
+
one: "Виден {count} узел",
|
|
127
|
+
few: "Видно {count} узла",
|
|
128
|
+
many: "Видно {count} узлов",
|
|
129
|
+
other: "Видно {count} узла",
|
|
130
|
+
},
|
|
111
131
|
|
|
112
132
|
"diffViewer.title": "Сравнение текста",
|
|
113
133
|
"diffViewer.before": "Было",
|
|
@@ -119,8 +139,14 @@ module.exports = {
|
|
|
119
139
|
"diffViewer.lineAdded": "Добавлена строка {number}",
|
|
120
140
|
"diffViewer.lineRemoved": "Удалена строка {number}",
|
|
121
141
|
"diffViewer.lineChanged": "Заменена строка {number}",
|
|
122
|
-
"diffViewer.showLines": {
|
|
123
|
-
|
|
142
|
+
"diffViewer.showLines": {
|
|
143
|
+
one: "Показать {count} строку",
|
|
144
|
+
few: "Показать {count} строки",
|
|
145
|
+
many: "Показать {count} строк",
|
|
146
|
+
other: "Показать {count} строки",
|
|
147
|
+
},
|
|
148
|
+
"diffViewer.summary":
|
|
149
|
+
"Изменений: {groups}, добавлено строк: {added}, удалено строк: {removed}, заменено строк: {changed}",
|
|
124
150
|
},
|
|
125
151
|
en: {
|
|
126
152
|
"editor.formatting": "Formatting",
|
|
@@ -219,10 +245,10 @@ module.exports = {
|
|
|
219
245
|
"jsonViewer.dataTree": "{name}: data tree",
|
|
220
246
|
"jsonViewer.expanded": "Expanded: {name}",
|
|
221
247
|
"jsonViewer.collapsed": "Collapsed: {name}",
|
|
222
|
-
"jsonViewer.elements": {one: "{count} element", other: "{count} elements"},
|
|
223
|
-
"jsonViewer.properties": {one: "{count} property", other: "{count} properties"},
|
|
224
|
-
"jsonViewer.found": {one: "{count} node found", other: "{count} nodes found"},
|
|
225
|
-
"jsonViewer.visible": {one: "{count} node visible", other: "{count} nodes visible"},
|
|
248
|
+
"jsonViewer.elements": { one: "{count} element", other: "{count} elements" },
|
|
249
|
+
"jsonViewer.properties": { one: "{count} property", other: "{count} properties" },
|
|
250
|
+
"jsonViewer.found": { one: "{count} node found", other: "{count} nodes found" },
|
|
251
|
+
"jsonViewer.visible": { one: "{count} node visible", other: "{count} nodes visible" },
|
|
226
252
|
|
|
227
253
|
"diffViewer.title": "Text comparison",
|
|
228
254
|
"diffViewer.before": "Before",
|
|
@@ -234,7 +260,8 @@ module.exports = {
|
|
|
234
260
|
"diffViewer.lineAdded": "Line {number} added",
|
|
235
261
|
"diffViewer.lineRemoved": "Line {number} removed",
|
|
236
262
|
"diffViewer.lineChanged": "Line {number} changed",
|
|
237
|
-
"diffViewer.showLines": {one: "Show {count} line", other: "Show {count} lines"},
|
|
238
|
-
"diffViewer.summary":
|
|
239
|
-
|
|
263
|
+
"diffViewer.showLines": { one: "Show {count} line", other: "Show {count} lines" },
|
|
264
|
+
"diffViewer.summary":
|
|
265
|
+
"Changes: {groups}, lines added: {added}, lines removed: {removed}, lines changed: {changed}",
|
|
266
|
+
},
|
|
240
267
|
};
|
|
@@ -27,6 +27,37 @@ module.exports = {
|
|
|
27
27
|
"feedback.chatRead": "Прочитано",
|
|
28
28
|
"feedback.chatFailed": "Не отправлено",
|
|
29
29
|
|
|
30
|
+
"feedback.writeBar": "Панель ввода",
|
|
31
|
+
"feedback.writeBarField": "Текст сообщения",
|
|
32
|
+
"feedback.writeBarPlaceholder": "Напишите сообщение…",
|
|
33
|
+
"feedback.writeBarSend": "Отправить",
|
|
34
|
+
"feedback.writeBarButton": "Действие панели ввода",
|
|
35
|
+
"feedback.writeBarBadge": "выбрано: {value}",
|
|
36
|
+
"feedback.writeBarHint": "Enter — отправить, Shift+Enter — новая строка",
|
|
37
|
+
"feedback.messageBar": "Сообщения",
|
|
38
|
+
"feedback.messageBarEmpty": "Сообщений пока нет",
|
|
39
|
+
"feedback.messageBarNew": "Новые сообщения",
|
|
40
|
+
"feedback.messageBarNewCount": "Новые сообщения: {value}",
|
|
41
|
+
"feedback.messageBarDown": "К низу",
|
|
42
|
+
"feedback.userBar": "Пользователь",
|
|
43
|
+
"feedback.userBarBack": "Назад",
|
|
44
|
+
"feedback.userBarMore": "Ещё",
|
|
45
|
+
"feedback.userBarAction": "Действие",
|
|
46
|
+
"feedback.userBarBadge": "{value}",
|
|
47
|
+
"feedback.userBarOpen": "Открыть профиль: {name}",
|
|
48
|
+
"feedback.userListBar": "Разговоры",
|
|
49
|
+
"feedback.userListBarSearch": "Поиск разговоров",
|
|
50
|
+
"feedback.userListBarEmpty": "Разговоров нет",
|
|
51
|
+
"feedback.userListBarNoMatch": "Ничего не найдено",
|
|
52
|
+
"feedback.userListBarUnread": "непрочитанных: {value}",
|
|
53
|
+
"feedback.actionsBar": "Действия",
|
|
54
|
+
"feedback.actionsBarButton": "Действие",
|
|
55
|
+
"feedback.actionsBarBadge": "{value}",
|
|
56
|
+
"feedback.banner": "Объявление",
|
|
57
|
+
"feedback.cardScroll": "Карточки",
|
|
58
|
+
"feedback.cardScrollPrev": "Назад",
|
|
59
|
+
"feedback.cardScrollNext": "Вперёд",
|
|
60
|
+
|
|
30
61
|
"feedback.centerTitle": "Уведомления",
|
|
31
62
|
"feedback.centerEmpty": "Уведомлений нет",
|
|
32
63
|
"feedback.centerNew": "Новое уведомление: {title}",
|
|
@@ -63,7 +94,7 @@ module.exports = {
|
|
|
63
94
|
"feedback.previousSlide": "Предыдущий слайд",
|
|
64
95
|
"feedback.slideshowControls": "Управление слайд-шоу",
|
|
65
96
|
"feedback.autoplayStart": "Запустить автопрокрутку",
|
|
66
|
-
"feedback.autoplayPause": "Пауза автопрокрутки"
|
|
97
|
+
"feedback.autoplayPause": "Пауза автопрокрутки",
|
|
67
98
|
},
|
|
68
99
|
en: {
|
|
69
100
|
"feedback.loading": "Loading",
|
|
@@ -89,6 +120,37 @@ module.exports = {
|
|
|
89
120
|
"feedback.chatRead": "Read",
|
|
90
121
|
"feedback.chatFailed": "Not sent",
|
|
91
122
|
|
|
123
|
+
"feedback.writeBar": "Write bar",
|
|
124
|
+
"feedback.writeBarField": "Message text",
|
|
125
|
+
"feedback.writeBarPlaceholder": "Write a message…",
|
|
126
|
+
"feedback.writeBarSend": "Send",
|
|
127
|
+
"feedback.writeBarButton": "Write bar action",
|
|
128
|
+
"feedback.writeBarBadge": "selected: {value}",
|
|
129
|
+
"feedback.writeBarHint": "Enter to send, Shift+Enter for a new line",
|
|
130
|
+
"feedback.messageBar": "Messages",
|
|
131
|
+
"feedback.messageBarEmpty": "No messages yet",
|
|
132
|
+
"feedback.messageBarNew": "New messages",
|
|
133
|
+
"feedback.messageBarNewCount": "New messages: {value}",
|
|
134
|
+
"feedback.messageBarDown": "Go to bottom",
|
|
135
|
+
"feedback.userBar": "User",
|
|
136
|
+
"feedback.userBarBack": "Back",
|
|
137
|
+
"feedback.userBarMore": "More",
|
|
138
|
+
"feedback.userBarAction": "Action",
|
|
139
|
+
"feedback.userBarBadge": "{value}",
|
|
140
|
+
"feedback.userBarOpen": "Open profile: {name}",
|
|
141
|
+
"feedback.userListBar": "Conversations",
|
|
142
|
+
"feedback.userListBarSearch": "Search conversations",
|
|
143
|
+
"feedback.userListBarEmpty": "No conversations",
|
|
144
|
+
"feedback.userListBarNoMatch": "Nothing found",
|
|
145
|
+
"feedback.userListBarUnread": "unread: {value}",
|
|
146
|
+
"feedback.actionsBar": "Actions",
|
|
147
|
+
"feedback.actionsBarButton": "Action",
|
|
148
|
+
"feedback.actionsBarBadge": "{value}",
|
|
149
|
+
"feedback.banner": "Announcement",
|
|
150
|
+
"feedback.cardScroll": "Cards",
|
|
151
|
+
"feedback.cardScrollPrev": "Previous",
|
|
152
|
+
"feedback.cardScrollNext": "Next",
|
|
153
|
+
|
|
92
154
|
"feedback.centerTitle": "Notifications",
|
|
93
155
|
"feedback.centerEmpty": "No notifications",
|
|
94
156
|
"feedback.centerNew": "New notification: {title}",
|
|
@@ -125,6 +187,6 @@ module.exports = {
|
|
|
125
187
|
"feedback.previousSlide": "Previous slide",
|
|
126
188
|
"feedback.slideshowControls": "Slideshow controls",
|
|
127
189
|
"feedback.autoplayStart": "Start autoplay",
|
|
128
|
-
"feedback.autoplayPause": "Pause autoplay"
|
|
129
|
-
}
|
|
190
|
+
"feedback.autoplayPause": "Pause autoplay",
|
|
191
|
+
},
|
|
130
192
|
};
|
|
@@ -70,7 +70,7 @@ module.exports = {
|
|
|
70
70
|
"forms.mentionLabel": "Упоминание",
|
|
71
71
|
"forms.mentionOptions": "Подсказки",
|
|
72
72
|
"forms.mentionHint": "Введите {trigger} — появятся подсказки",
|
|
73
|
-
"forms.mentionInserted": "Добавлено: {value}"
|
|
73
|
+
"forms.mentionInserted": "Добавлено: {value}",
|
|
74
74
|
},
|
|
75
75
|
en: {
|
|
76
76
|
"forms.sliderValue": "Value",
|
|
@@ -114,14 +114,14 @@ module.exports = {
|
|
|
114
114
|
"forms.chipsInputLabel": "Tags field",
|
|
115
115
|
"forms.chipsPlaceholder": "Add a tag",
|
|
116
116
|
"forms.chipsHint": "Enter or comma adds a tag, Backspace on an empty field removes the last one",
|
|
117
|
-
"forms.chipsAdded":
|
|
118
|
-
"forms.chipsRemoved":
|
|
117
|
+
"forms.chipsAdded": 'Tag "{value}" added. Tags total: {count}',
|
|
118
|
+
"forms.chipsRemoved": 'Tag "{value}" removed. Tags total: {count}',
|
|
119
119
|
"forms.chipsCleared": "All tags removed",
|
|
120
|
-
"forms.chipsRemove":
|
|
120
|
+
"forms.chipsRemove": 'Remove "{value}"',
|
|
121
121
|
"forms.chipsLimitPlaceholder": "Limit: {count}",
|
|
122
122
|
"forms.chipsLimitReached": "Limit reached: {count} tags",
|
|
123
|
-
"forms.chipsDuplicate":
|
|
124
|
-
"forms.chipsNotSuggested": "
|
|
123
|
+
"forms.chipsDuplicate": 'Tag "{value}" is already added',
|
|
124
|
+
"forms.chipsNotSuggested": '"{value}" is not among the suggestions',
|
|
125
125
|
"forms.chipsMore": "Tags that did not fit on the line: {count}",
|
|
126
126
|
"forms.multiComboMore": "Selected values that did not fit on the line: {count}",
|
|
127
127
|
|
|
@@ -139,6 +139,6 @@ module.exports = {
|
|
|
139
139
|
"forms.mentionLabel": "Mention",
|
|
140
140
|
"forms.mentionOptions": "Suggestions",
|
|
141
141
|
"forms.mentionHint": "Type {trigger} to see suggestions",
|
|
142
|
-
"forms.mentionInserted": "Added: {value}"
|
|
143
|
-
}
|
|
142
|
+
"forms.mentionInserted": "Added: {value}",
|
|
143
|
+
},
|
|
144
144
|
};
|
|
@@ -68,7 +68,7 @@ module.exports = {
|
|
|
68
68
|
"graphics.qrModeMismatch": "Режим «{mode}» не подходит для этого текста",
|
|
69
69
|
"graphics.qrMode.numeric": "цифры",
|
|
70
70
|
"graphics.qrMode.alphanumeric": "буквы и цифры",
|
|
71
|
-
"graphics.qrMode.byte": "байты"
|
|
71
|
+
"graphics.qrMode.byte": "байты",
|
|
72
72
|
},
|
|
73
73
|
en: {
|
|
74
74
|
"graphics.barChart": "Bar chart",
|
|
@@ -95,13 +95,13 @@ module.exports = {
|
|
|
95
95
|
"graphics.kanbanBoard": "Kanban board",
|
|
96
96
|
"graphics.kanbanColumn": "Column {index}",
|
|
97
97
|
"graphics.kanbanCard": "Card",
|
|
98
|
-
"graphics.quotedName": "
|
|
98
|
+
"graphics.quotedName": '"{name}"',
|
|
99
99
|
"graphics.kanbanTags": "tags: {value}",
|
|
100
100
|
"graphics.kanbanColumnOf": "column: {value}",
|
|
101
101
|
"graphics.kanbanColumnCount": "{title}, cards: {count}",
|
|
102
102
|
"graphics.kanbanColumnCountLimit": "{title}, cards: {count} of {limit}",
|
|
103
103
|
"graphics.kanbanEmpty": "Empty",
|
|
104
|
-
"graphics.kanbanMovedTo":
|
|
104
|
+
"graphics.kanbanMovedTo": 'Card {card} moved to "{column}"',
|
|
105
105
|
"graphics.kanbanMoved": "Card {card} moved",
|
|
106
106
|
"graphics.kanbanMoveRefused": "Card {card} was not moved: the column limit is reached",
|
|
107
107
|
|
|
@@ -109,8 +109,8 @@ module.exports = {
|
|
|
109
109
|
"graphics.clipboardEmpty": "History is empty",
|
|
110
110
|
"graphics.clipboardCopied": "Copied: {value}",
|
|
111
111
|
"graphics.clipboardCleared": "History cleared",
|
|
112
|
-
"graphics.clipboardCopy":
|
|
113
|
-
"graphics.clipboardRemove":
|
|
112
|
+
"graphics.clipboardCopy": 'Copy "{value}"',
|
|
113
|
+
"graphics.clipboardRemove": 'Delete "{value}"',
|
|
114
114
|
|
|
115
115
|
"graphics.settingsTheme": "Theme",
|
|
116
116
|
"graphics.settingsAppearance": "Color theme",
|
|
@@ -132,9 +132,9 @@ module.exports = {
|
|
|
132
132
|
"graphics.qrEmpty": "No value",
|
|
133
133
|
"graphics.qrTooLongChars": "Does not fit: {needed} characters, {capacity} max",
|
|
134
134
|
"graphics.qrTooLongBytes": "Does not fit: {needed} bytes, {capacity} max",
|
|
135
|
-
"graphics.qrModeMismatch":
|
|
135
|
+
"graphics.qrModeMismatch": 'Mode "{mode}" cannot encode this text',
|
|
136
136
|
"graphics.qrMode.numeric": "digits",
|
|
137
137
|
"graphics.qrMode.alphanumeric": "letters and digits",
|
|
138
|
-
"graphics.qrMode.byte": "bytes"
|
|
139
|
-
}
|
|
138
|
+
"graphics.qrMode.byte": "bytes",
|
|
139
|
+
},
|
|
140
140
|
};
|
|
@@ -59,7 +59,7 @@ module.exports = {
|
|
|
59
59
|
"media.imageCompareLabel": "Сравнение до и после",
|
|
60
60
|
"media.imageCompareBefore": "До",
|
|
61
61
|
"media.imageCompareAfter": "После",
|
|
62
|
-
"media.imageCompareValue": "{value} %"
|
|
62
|
+
"media.imageCompareValue": "{value} %",
|
|
63
63
|
},
|
|
64
64
|
en: {
|
|
65
65
|
"media.audioPlayer": "Audio player",
|
|
@@ -77,7 +77,7 @@ module.exports = {
|
|
|
77
77
|
"media.soundOff": "Sound off",
|
|
78
78
|
"media.soundOn": "Sound on",
|
|
79
79
|
"media.noSource": "The track has no source",
|
|
80
|
-
"media.cannotOpen":
|
|
80
|
+
"media.cannotOpen": 'Could not open "{source}"',
|
|
81
81
|
"media.trackStatus": "Track: {title}",
|
|
82
82
|
"media.track": "Track",
|
|
83
83
|
"media.tracks": "Tracks",
|
|
@@ -118,6 +118,6 @@ module.exports = {
|
|
|
118
118
|
"media.imageCompareLabel": "Before and after comparison",
|
|
119
119
|
"media.imageCompareBefore": "Before",
|
|
120
120
|
"media.imageCompareAfter": "After",
|
|
121
|
-
"media.imageCompareValue": "{value} %"
|
|
122
|
-
}
|
|
121
|
+
"media.imageCompareValue": "{value} %",
|
|
122
|
+
},
|
|
123
123
|
};
|
|
@@ -25,6 +25,8 @@ module.exports = {
|
|
|
25
25
|
"navigation.stepper": "Шаги",
|
|
26
26
|
"navigation.stepOf": "Шаг {index} из {total}",
|
|
27
27
|
"navigation.stepDone": "выполнено",
|
|
28
|
+
"navigation.stepError": "ошибка",
|
|
29
|
+
"navigation.stepPending": "ожидает выполнения",
|
|
28
30
|
"navigation.stepCurrent": "текущий шаг",
|
|
29
31
|
"navigation.stepTodo": "не начат",
|
|
30
32
|
|
|
@@ -41,7 +43,7 @@ module.exports = {
|
|
|
41
43
|
"navigation.toolbar": "Панель инструментов",
|
|
42
44
|
"navigation.statusBar": "Строка состояния",
|
|
43
45
|
"navigation.moreActions": "Дополнительные действия",
|
|
44
|
-
"navigation.mainAction": "Основное действие"
|
|
46
|
+
"navigation.mainAction": "Основное действие",
|
|
45
47
|
},
|
|
46
48
|
en: {
|
|
47
49
|
"navigation.pagination": "Pagination",
|
|
@@ -56,14 +58,16 @@ module.exports = {
|
|
|
56
58
|
"navigation.breadcrumb": "Breadcrumb",
|
|
57
59
|
|
|
58
60
|
"navigation.tab": "Tab",
|
|
59
|
-
"navigation.closeTab":
|
|
60
|
-
"navigation.tabClosed":
|
|
61
|
-
"navigation.tabClosedOpened":
|
|
62
|
-
"navigation.tabClosedNothing":
|
|
61
|
+
"navigation.closeTab": 'Close tab "{title}"',
|
|
62
|
+
"navigation.tabClosed": 'Tab "{title}" closed',
|
|
63
|
+
"navigation.tabClosedOpened": 'Tab "{title}" closed, "{active}" opened',
|
|
64
|
+
"navigation.tabClosedNothing": 'Tab "{title}" closed, no tabs left',
|
|
63
65
|
|
|
64
66
|
"navigation.stepper": "Steps",
|
|
65
67
|
"navigation.stepOf": "Step {index} of {total}",
|
|
66
68
|
"navigation.stepDone": "done",
|
|
69
|
+
"navigation.stepError": "error",
|
|
70
|
+
"navigation.stepPending": "in progress",
|
|
67
71
|
"navigation.stepCurrent": "current step",
|
|
68
72
|
"navigation.stepTodo": "not started",
|
|
69
73
|
|
|
@@ -75,11 +79,11 @@ module.exports = {
|
|
|
75
79
|
"navigation.commandPlaceholder": "Find a command…",
|
|
76
80
|
"navigation.recentGroup": "Recent",
|
|
77
81
|
"navigation.commandsFound": "Commands found: {count}",
|
|
78
|
-
"navigation.commandsFoundFor":
|
|
82
|
+
"navigation.commandsFoundFor": 'Commands found: {count} for "{query}"',
|
|
79
83
|
|
|
80
84
|
"navigation.toolbar": "Toolbar",
|
|
81
85
|
"navigation.statusBar": "Status bar",
|
|
82
86
|
"navigation.moreActions": "More actions",
|
|
83
|
-
"navigation.mainAction": "Main action"
|
|
84
|
-
}
|
|
87
|
+
"navigation.mainAction": "Main action",
|
|
88
|
+
},
|
|
85
89
|
};
|
|
@@ -10,7 +10,7 @@ module.exports = {
|
|
|
10
10
|
"validate.minLength": "Минимум {minLength} символов",
|
|
11
11
|
"validate.maxLength": "Максимум {maxLength} символов",
|
|
12
12
|
"validate.pattern": "Неверный формат",
|
|
13
|
-
"validate.email": "Неверный адрес электронной почты"
|
|
13
|
+
"validate.email": "Неверный адрес электронной почты",
|
|
14
14
|
},
|
|
15
15
|
en: {
|
|
16
16
|
"validate.required": "Required field",
|
|
@@ -19,6 +19,6 @@ module.exports = {
|
|
|
19
19
|
"validate.minLength": "At least {minLength} characters",
|
|
20
20
|
"validate.maxLength": "At most {maxLength} characters",
|
|
21
21
|
"validate.pattern": "Invalid format",
|
|
22
|
-
"validate.email": "Invalid email address"
|
|
23
|
-
}
|
|
22
|
+
"validate.email": "Invalid email address",
|
|
23
|
+
},
|
|
24
24
|
};
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* Слушателей модуль не заводит, поэтому `destroy()` не нужен.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
const {I18n} = require("../chui_i18n/chui_i18n");
|
|
13
|
+
const { I18n } = require("../chui_i18n/chui_i18n");
|
|
14
14
|
|
|
15
15
|
/** Смещение символа в позицию «строка/столбец» (нумерация с единицы) */
|
|
16
16
|
function placeOf(text = String(), offset = Number()) {
|
|
@@ -18,9 +18,9 @@ function placeOf(text = String(), offset = Number()) {
|
|
|
18
18
|
const limit = Math.max(0, Math.min(Number(offset) || 0, value.length));
|
|
19
19
|
const before = value.slice(0, limit);
|
|
20
20
|
const line = before.split("\n").length;
|
|
21
|
-
const
|
|
22
|
-
const column = limit -
|
|
23
|
-
return {line: line, column: column, offset: limit};
|
|
21
|
+
const lastBreak = before.lastIndexOf("\n");
|
|
22
|
+
const column = limit - lastBreak;
|
|
23
|
+
return { line: line, column: column, offset: limit };
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/** Место ошибки из текста исключения `JSON.parse`; `undefined`, если движок места не назвал */
|
|
@@ -28,7 +28,7 @@ function errorPlace(message = String(), text = String()) {
|
|
|
28
28
|
const named = /\(line (\d+) column (\d+)\)/.exec(String(message));
|
|
29
29
|
if (named !== null) {
|
|
30
30
|
const offset = offsetOf(text, Number(named[1]), Number(named[2]));
|
|
31
|
-
return {line: Number(named[1]), column: Number(named[2]), offset: offset};
|
|
31
|
+
return { line: Number(named[1]), column: Number(named[2]), offset: offset };
|
|
32
32
|
}
|
|
33
33
|
const positioned = /at position (\d+)/.exec(String(message));
|
|
34
34
|
if (positioned !== null) return placeOf(text, Number(positioned[1]));
|
|
@@ -59,25 +59,25 @@ function cleanMessage(message = String()) {
|
|
|
59
59
|
function parse(text = String()) {
|
|
60
60
|
const value = text === undefined || text === null ? "" : String(text);
|
|
61
61
|
try {
|
|
62
|
-
return {ok: true, value: JSON.parse(value)};
|
|
62
|
+
return { ok: true, value: JSON.parse(value) };
|
|
63
63
|
} catch (error) {
|
|
64
64
|
const message = error instanceof Error ? error.message : String(error);
|
|
65
65
|
const place = errorPlace(message, value);
|
|
66
|
-
const result = {message: cleanMessage(message)};
|
|
66
|
+
const result = { message: cleanMessage(message) };
|
|
67
67
|
if (place !== undefined) {
|
|
68
68
|
result.line = place.line;
|
|
69
69
|
result.column = place.column;
|
|
70
70
|
result.offset = place.offset;
|
|
71
71
|
}
|
|
72
|
-
return {ok: false, error: result};
|
|
72
|
+
return { ok: false, error: result };
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
/** Текст ошибки на языке интерфейса: с местом, если оно известно */
|
|
77
77
|
function errorText(error) {
|
|
78
78
|
if (error === undefined || error === null) return "";
|
|
79
|
-
if (error.line === undefined) return I18n.t("json.invalid", {message: error.message});
|
|
80
|
-
return I18n.t("json.invalidAt", {line: error.line, column: error.column, message: error.message});
|
|
79
|
+
if (error.line === undefined) return I18n.t("json.invalid", { message: error.message });
|
|
80
|
+
return I18n.t("json.invalidAt", { line: error.line, column: error.column, message: error.message });
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
/** Красивый JSON (`indent` — число пробелов), иначе исходный текст */
|
|
@@ -101,5 +101,5 @@ exports.Json = {
|
|
|
101
101
|
offsetOf: offsetOf,
|
|
102
102
|
errorPlace: errorPlace,
|
|
103
103
|
format: format,
|
|
104
|
-
minify: minify
|
|
104
|
+
minify: minify,
|
|
105
105
|
};
|
|
@@ -21,7 +21,7 @@ const ROLE = {
|
|
|
21
21
|
ROUTE_VIEWS: "route_views",
|
|
22
22
|
NOTIFICATION_PANEL: "notification_panel",
|
|
23
23
|
NOTIFICATION_BOX: "notification_box",
|
|
24
|
-
NOTIFICATION_BOX_MAIN: "notification_box_main"
|
|
24
|
+
NOTIFICATION_BOX_MAIN: "notification_box_main",
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
/** Узлы одного layout'а: роль → узел */
|
|
@@ -76,7 +76,7 @@ function unregisterLayout(layout = new LayoutRefs()) {
|
|
|
76
76
|
/** Layout, которому принадлежит узел, иначе — последний созданный */
|
|
77
77
|
function getLayout(scope = undefined) {
|
|
78
78
|
if (scope !== undefined && scope !== null) {
|
|
79
|
-
const owner = layouts.find(layout => layout.owns(scope));
|
|
79
|
+
const owner = layouts.find((layout) => layout.owns(scope));
|
|
80
80
|
if (owner !== undefined) return owner;
|
|
81
81
|
}
|
|
82
82
|
return layouts[layouts.length - 1];
|
|
@@ -92,15 +92,17 @@ function findLayoutNode(role = String(), scope = undefined) {
|
|
|
92
92
|
function requireLayoutNode(role = String(), scope = undefined) {
|
|
93
93
|
const node = findLayoutNode(role, scope);
|
|
94
94
|
if (node === undefined) {
|
|
95
|
-
throw new Error(
|
|
95
|
+
throw new Error(
|
|
96
|
+
`chui_layout: узел «${role}» не найден — layout не создан (new AppLayout()) или часть не зарегистрирована`
|
|
97
|
+
);
|
|
96
98
|
}
|
|
97
99
|
return node;
|
|
98
100
|
}
|
|
99
101
|
|
|
100
|
-
exports.LAYOUT_ROLE = ROLE
|
|
101
|
-
exports.LayoutRefs = LayoutRefs
|
|
102
|
-
exports.registerLayout = registerLayout
|
|
103
|
-
exports.unregisterLayout = unregisterLayout
|
|
104
|
-
exports.getLayout = getLayout
|
|
105
|
-
exports.findLayoutNode = findLayoutNode
|
|
106
|
-
exports.requireLayoutNode = requireLayoutNode
|
|
102
|
+
exports.LAYOUT_ROLE = ROLE;
|
|
103
|
+
exports.LayoutRefs = LayoutRefs;
|
|
104
|
+
exports.registerLayout = registerLayout;
|
|
105
|
+
exports.unregisterLayout = unregisterLayout;
|
|
106
|
+
exports.getLayout = getLayout;
|
|
107
|
+
exports.findLayoutNode = findLayoutNode;
|
|
108
|
+
exports.requireLayoutNode = requireLayoutNode;
|