Патч 3.6.0.10 (22.09.2022)¶
Добавление и изменение функциональности¶
- При подписании файлов сохраняется цепочка сертификатов, добавленная криптопровайдером.
- В рабочем месте “Пользователь” в представлении “Подписки на уведомления” добавлена возможность открывать карточку документа по двойному клику.
- Добавлена поддержка PEM сертификатов (файлов с расширениями
.crt
и.pem
) для сервиса web. Подробности доступны в разделе документации Настройки веб-сервера Kestrel в группе WebServer. - В файл
app.json
сервиса web добавлены настройкиCertificateKeyFile
иDataProtectionCertificateKeyFile
. Настройки описаны в руководстве по установке. - В TessaAdmin в редакторе представлений в полях алиаса и заголовка представления теперь при потере фокуса происходит автоматическое удаление начальных и конечных пробелов. Алиас и заголовок представления больше не могут быть пустыми или состоять из одних пробелов.
- В форумах (обсуждениях) добавлена возможность задавать описание и заголовок топика с использованием строк локализации. При использовании нескольких строк локализации каждую из них необходимо заключать в фигурные скобки.
- При генерации ошибок типа
InstanceNotFound
добавлен вывод имени объекта и стека места генерации ошибки, кроме режима"Configuration.StrictSecurity": true
, устанавливаемого в файлеapp.json
веб-сервиса иChronos
(если настройка установлена). - В web-клиенте улучшена обработка ошибок при windows-аутентификации.
- В тип карточки “Тип условия” добавлены кнопки для исправления условий конкретного типа и всех типов. Подробности доступны в разделе документации Исправление условий.
- Добавлено исправление условий при импорте карточек, содержащих условия.
- В настройки контролов “Строка” и “Текст с форматированием” добавлен признак “Проверять орфографию” (по умолчанию отключён), при включении которого выполняется проверка орфографии в соответствии с текущей языковой культурой пользователя.
Новые версии библиотек¶
HtmlAgilityPack 1.11.46
Kerberos.NET 4.5.178
MailKit 3.4.1
Npgsql 5.0.15
NTwain 3.7.2
Quartz 3.5.0
SixLabors.ImageSharp.Drawing 1.0.0-beta15
StackExchange.Redis 2.6.66
Swashbuckle.AspNetCore 6.4.0
Изменения API¶
- В web-клиенте реализована возможность загружать файлы в карточки заданий. Пример в расширении типового решения
TaskEnableAttachFilesExampleUIExtension
. - В интерфейсе
IExtensionContainer
(C#) добавлены перегрузки методовResolveExecutorAsync
иTryResolveExecutorAsync
, принимающие дополнительный параметрsynchronized
. Если передано значениеtrue
, то к созданному объекту возможно одновременное обращение из разных потоков (нитей выполнения). Перегрузки, не принимающие этот параметр, подразумевают значениеsynchronized: false
. - В форумах (обсуждениях) добавлен метод
IForumProviderStrategy.HasUnreadMessagesAsync
, возвращающий признак того, что в указанном топике присутствуют непрочитанные сообщения для текущего пользователя. - Объекты
ICardToolbarViewModel
иICardToolbarItemCollection
предоставляют методSuspendNotifications
, предотвращающий уведомления для коллекции кнопок на тулбаре о событияхPropertyChanged
иCollectionChanged
до тех пор, пока не будет вызван методDispose
на возвращённом объекте. Это позволяет оптимизировать отрисовку в desktop-клиенте при большом количестве изменений в кнопках на тулбаре, например, при сохранении или обновлении карточки. - Объект
SuspendableObservableCollection
перенесён из пространства имёнTessa.UI
вTessa.Platform.Collections
. Его методSuspendChangeNotification
переименован вSuspendNotifications
. КоллекцияObservableCollection<TItem, TCollection>
унаследована от этого класса и теперь реализует интерфейсISuspendableObservableCollection<TItem, TCollection>
, который предоставляет методSuspendNotifications
. - В desktop-клиенте в класс
GridColumnViewModel
добавлено свойствоHeaderStyle
с настройками стиля заголовка колонки. - В настройки отображения карточки
ShowCardOptions
добавлены настройкиHideParentWindow
,UseParentWindowLocation
иRestoreWindowLocationToParent
, которые позволяют скрывать родительское окно при отображении дочернего окна, а также передавать размеры и положение этих окон между собой. - Добавлен интерфейс
IUriLinkHandler
- обработчик для гиперссылок, используемый при открытии ссылок из контролов “Текст с форматированием”, “Метка” в режиме гиперссылки и при предпросмотре html-файлов (причём обработчик может определить, откуда именно открывается гиперссылка). Реализацию этого интерфейса можно переопределить для пользовательской логики обработки гиперссылок. ЛогикаIUriLinkHandler
выполняется после обработчиков событияUriOpening
. - Для
BlRichTextBoxViewModelBase
(эта вью-модель соответствует контролу “Текст с форматированием”) добавлено событиеUriOpening
, вызываемое при открытии гиперссылок. С помощью событияUriOpening
можно определить пользовательскую обработку гиперссылок для конкретного контрола, а также отменить обработку гиперссылок, которая выполняется посредствомIUriLinkHandler
. - В web-клиенте для
LabelViewModel
добавлено свойствоlinkCommand
, с помощью которого можно изменить заданную для контрола ссылку. - Добавлен метод
IFileSource.TryGetSourceObjectID
, позволяющий получить идентификатор объекта-хранилища для указанного файла. - Для web-клиента добавлен метод
IFileSource.tryGetSourceObjectID
(аналог соответствующего метода в desktop-клиенте), позволяющий получить идентификатор объекта-хранилища для указанного файла. - В
ITaskAction
добавлено свойствоBackground
для возможности изменения фона варианта завершения в задании. Если свойство не задано, то будет использоваться цвет из темы. - Для контрола “Представление” в desktop-клиенте в классе
CardViewControlViewModel
добавлено событиеRefreshed
, вызываемое после успешного обновления источника данных и объектов UI (колонок и строк). В обработчиках события можно изменить эти объекты. Для переопределения данных, по которым строятся объекты UI, замените источник данных в свойствеDataProvider
. - В desktop-клиенте для модели представления ячейки
TableCellViewModel
, использующейся в представлениях в рабочих местах и в контроле карточки “Представление”, добавлена возможность динамически изменять все свойства, влияющие на отображение, в т.ч. цвет фона, цвет текста, шрифт и выравнивание. Пример изменения цвета фона ячейки в контроле “Представление” в расширенииCardUIExtension.Initialized
:context.Model.Controls.Get<CardViewControlViewModel>("ControlAlias").Items.First().CellsByColumnName["ColumnAlias"].Background = Brushes.Blue
. - В web-клиенте для контрола “Текст с форматированием” добавлен флаг
richTextBoxViewModel.stretchByContent
для растягивания высоты контрола по его контенту. - В
TaskAction
(TypeScript) добавлено свойствоbackground
для возможности изменения фона варианта завершения в задании. Если свойство задано не будет, то будет использоваться цвет из темы. - В
TaskWorkspaceViewModel
(TypeScript) добавлено полеmoreAction
для возможности изменения цвета кнопки “ещё”. Если свойствоmoreAction.background
задано не будет, то будет использоваться цвет из темы. - Добавлены ложные реализации типов для компиляции. Разрешение таких объектов теперь всегда выполняется успешно. Но использование ложных реализаций будет вызывать исключение
NotSupportedException
. - В
ForumHelper
добавлена константаMessageText
, предназначенная для формирования текста сообщения с корректным форматированием. - Добавлен объект
IConditionRepairManager
, который позволяет запускать исправление условий для карточек и для типов условий. Объект доступен как на клиентской стороне для администратора, так и на серверной. - В
ConditionHelper
в методы сериализации и десериализации условий добавлен параметрIConditionTypesProvider
, который необходим для корректной сериализации и десериализации условий. - Для запроса на загрузку карточки
CardGetExtension
добавлен метод расширения дляSetDisableExpandJsonFlag
для указания на то, что при экспорте карточки не нужно разворачивать JSON-поля карточки из строки вDictionary<string, object>
. Также добавлен методTryGetDisableExpandJsonFlag
для получения данного флага из запроса и методShouldExpandJson
для проверки флага с учётом значения поляExportFormat
запроса. - В методы
ICardManager.ImportAsync()
добавлен параметрbool wipeDeleted = false
. В значенииtrue
флаг указывает на то, что нужно очищать удалённые в корзину карточки, если они будут препятствовать импорту. - В web-клиенте добавлена возможность настроить компоненты грида для отображения с горизонтальным скролом. В объектах
TableGridViewModelBase
,TaskHistoryViewModel
,GridViewModel
добавлено свойствоhorizontalScroll
, которое позволяет устанавливать режим работы грида с горизонтальным скролом. Пример использования доступен вdefault/examples/25_horizontalScrollViews.ts
.
Исправления и оптимизации¶
- Исправлена ошибка некорректного отображения порядка вкладок карточки, если основная вкладка карточки расположена не первой.
- Исправлена ошибка некорректного отображения вкладки “Обсуждения” в карточке, если основная вкладка карточки расположена не первой.
- Оптимизировано обращение к свойству
ConfigurationObject.DataProvider
, выполняемое при открытии соединения к базе данных. - Оптимизировано выполнение цепочек расширений посредством
IExtensionExecutor<TExtension>
, когда к объекту невозможны одновременные обращения из разных потоков (нитей выполнения). - Исправлена ошибка, из-за которой обращения к свойствам
CardTask.Card
иCardFile.Card
в расширенияхICardStoreExtension.BeforeRequest
для удаляемых заданий и файлов приводило к ошибкам валидации видаЗначение свойства 'ID' не задано
. - В web-клиенте в рабочем месте “Пользователь” в представлении “Подписки на уведомления” добавлена возможность удалять подписки на уведомления с помощью комбинации клавиш Ctrl+D.
- Исправлено сохранение результата валидации с ошибками при компиляции скриптов в различных объектах системы. Проблема могла привести к некорректному выполнению некоторых скриптов в ситуации, когда их компиляция не была выполнена из-за ошибки в скрипте.
- Удален флаг
.forumExportCardTemplate
, проставляемый при экспорте карточек. - При открытии вкладки “Обсуждения” в карточке больше не делается запрос на получение топиков в случае, если карточка ни разу не была сохранена.
- Исправлена работа параметров
DataProtectionCertificateFile
иDataProtectionCertificatePassword
в файлеapp.json
сервиса web. - В редакторе схемы данных исправлена ошибка, из-за которой редактирование колонки становилось невозможным, если длина её имени превышала 128 символов.
- В форумах (обсуждениях) исправлено обновление списка сообщений и топиков с помощью хоткея Ctrl+R.
- В desktop-клиенте в маршрутах исправлена ошибка
KeyNotFoundException
при сохранении карточки, для которой разрешены маршруты, если она была загружена с исключением всех секций (CardGetRestrictionFlags.RestrictSections
). - В desktop-клиенте оптимизирована работа представлений, показывающих большое количество строк.
- В desktop-клиенте в форумах (обсуждениях) и элементе управления “Текст с форматированием” исправлена ошибка, приводившая к тому, что внесенные в полноэкранном режиме изменения не сохранялись.
- Исправлена ошибка, из-за которой сортировка в Tessa Applications на вкладках “Серверы” и “Приложения” отличалась от сортировки в контекстном меню на иконке в таскбаре.
- В таблице
SequencesInfo
исправлен индекс по колонкеName
для PostgreSQL. - Исправлены почтовые уведомления о необходимости скорого изменения пароля, когда за раз пользователю могло быть отправлено более одного письма.
- Исправлена локализация текста во всплывающих уведомлениях при запуске TessaClient о необходимости скорого изменения пароля.
- В форумах (обсуждениях) исправлена ошибка, приводившая к некорректному поведению при попытке изменить самого себя в списке участников.
- В desktop-клиенте оптимизирована отрисовка кнопок на тулбарах при сохранении и обновлении карточки.
- В web-клиенте исправлена ошибка, из-за которой при обновлении обсуждений введенный текст не сохранялся.
- В web-клиенте при первом сохранении карточки, для которой был выделен номер, теперь не отправляется запрос на дерезервирование номера.
- В маршрутах исправлена ошибка, из-за которой можно было удалить или активировать этап, расположенный в активной части процесса. Ошибка воспроизводилась для этапов, у которых был установлен флаг “Разрешён пропуск”.
- Исправлен текст ошибки при попытке сохранить карточку
ICardEditorModel.SaveCardAsync
, если объектICardModel
не содержит корректно инициализированный объектFileContainer
. Ранее возникала ошибка NRE. - В web-клиенте исправлена ошибка при редактировании файла через Deski, из-за которой файл мог сохраниться с неправильным размером.
- В редакторе бизнес-процессов исправлена ошибка
ArgumentNullException
при загрузке редактора или запуске процесса. Ошибка возникала, если в действии “Старт процесса” не был указан “Запускающий сигнал”. - В web-клиенте исправлена ошибка, приводящая к некорректному отображению некоторых изображений вертикальной ориентации в режиме предпросмотра: адаптация изображения происходила только в горизонтальном направлении.
- В desktop-клиенте добавлено автоматическое разворачивание активного окна при клике на заблокированные модальными диалогами окна.
- В web-клиенте исправлена ошибка, приводящая к отсутствию возможности скролла “рукой” области предпросмотра PDF-файлов в continuous режиме.
- Исправлена проблема в логике распознавания сервисных гиперссылок для “Обсуждений”, которая приводила к неработоспособности других гиперссылок, содержащих в строке
Uri
ключевые слова, используемые в сервисных гиперссылках для “Обсуждений”. - В TessaAdmin в редакторе рабочих мест исправлена ошибка при автоматическом выборе пункта меню в момент открытия режима просмотра рабочего места.
- В web-клиенте исправлена ошибка, приводящая к отсутствию вертикальных отступов для контролов горизонтальных блоков.
- В web-клиенте исправлена ошибка в отображении параметра “Отображаемое имя диалога” для этапа и действия в локальном и глобальном диалоге.
- В desktop-клиенте исправлена проблема, когда часть заголовка была закрыта иконкой сортировки по колонке.
- В desktop-клиенте в представлениях рабочих мест и контроле “Представление” исправлено определение позиции строк “Загрузка данных” и “Нет данных для отображения” в ситуации, когда высота заголовка таблицы отличается от стандартной.
- В web-клиенте исправлена ошибка, из-за которой не открывалась ссылка, указанная для контрола “Метка”.
- Исправлена ошибка, приводившая к неконсистентному результату подсчета символов в сообщении между клиентом и сервером.
- В web-клиенте исправлена ошибка, из-за которой в карточке задания не отображались прикрепленные файлы.
- В web-клиенте в форумах (обсуждениях) и контроле “Текст с форматированием” исправлена ошибка, приводившая к дублированию изображения при вставке из буфера обмена.
- В web-клиенте текст ошибки при превышении максимально допустимого размера изображения вынесен в строку локализации.
- Исправлена ошибка, из-за которой в редакторе типов карточек в настройках маппинга представления нельзя было выбрать в качестве поля карточки колонку с идентификатором, ссылающуюся на таблицу с типом “Перечисление”.
- Исправлена возможная ошибка
The wait completed due to an abandoned mutex
вTessaAppManager
при обработке ссылокtessa://tessaclient...
. - В web-клиенте исправлена ошибка, из-за которой не работала подсветка полей представления при указании для строки
#appearance
цвета в 6-значном формате (#A62231
) в тексте запроса. - В desktop-клиенте исправлена ошибка, из-за которой при нажатии на кнопку очистки значений в контролах “Ссылка” и “Список” фокус сбрасывался на родительский блок, что могло привести к незапланированному скроллингу карточки в ситуации, когда заголовок блока был вне поле зрения. Теперь после нажатия кнопки очистки значений фокус устанавливается на сам контрол.
- В desktop-клиенте в контролах “Ссылка” и “Список” исправлена проблема вызова события
ValueDeleted
при удалении элемента из контрола через контекстное меню или кнопку очистки значения. - Для desktop-клиента и консольного приложения tadmin оптимизировано потребление памяти при отправке запросов к серверу приложений.
- Исправлено создание дублирующих экземпляров
IUnityContainer
при инициализации сервиса web. Это могло приводить к зависанию сервиса при большом количестве параллельных запросов. - Исправлена ошибка при запуске TessaClient или TessaAdmin из Tessa Applications 3.4.0 с текстом:
System.TimeoutException: The operation has timed out
. - Исправлено предупреждение в логах
Can't resolve assembly "Microsoft.SqlServer.Server"
для консольной утилитыtadmin
. - В маршрутах исправлена ошибка, приводящая к потере результатов валидации из
IKrScope.ValidationResult
. Ошибка возникала, если при запуске процесса происходила ошибка загрузки сателлита с информацией о процессе. - Исправлено использование метода
DeferredEventArgs.Defer
в различных обработчиках событий для серверного API и desktop-клиента, где в качестве экземпляра события передавалось значениеDeferredEventArgs.Empty
. - Исправлена работа кнопки “Сброс настроек” в диалоге “Мои настройки”. Теперь для всех настроек устанавливаются значения по умолчанию.
- В диалоге импорта карточек из библиотеки (в TessaClient или TessaAdmin) исправлена ошибка
NotSupportedException
, которая могла возникать после того, как в диалоге сначала открыта существующая библиотека карточек, а потом в неё добавлен файл. - В desktop-клиенте в методе копирования стиля текста
TextStyleViewModel.Set
исправлено копирование оформления текста. - В web-клиенте исправлена ошибка записи в карточку пустых строк контрола “Десятичное число”.
- В диалоге импорта карточек из библиотеки (в TessaClient или TessaAdmin) исправлен диалог выбора пути при сохранении библиотеки в случае, если редактируется уже существующая библиотека карточек.
- В диалоге импорта карточек из библиотеки (в TessaClient или TessaAdmin) исправлена ошибка
NotSupportedException
, которая могла возникать, если в диалоге сначала открыть существующую библиотеку карточек, в которую были добавлены несуществующие файлы, после чего в диалоге подтверждения на удаление карточек с отсутствующими файлами нажать “Да”. - При расчёте заместителей исправлена ошибка, из-за которой замещения могли завершаться на день раньше, чем было настроено. Проблема возникала при использовании СУБД Postgres.
- В TessaAdmin для контрола выбора типа значения исправлена сортировка при быстром поиске по заглавным буквам.
- В web-клиенте исправлена ошибка, приводящая к невозможности использовать быстрый поиск в мобильной версии приложения на операционной системе Android.
- Исправлена ошибка, приводившая к NRE, при указании несуществующего параметра в маппинге контрола “Представление”.
- В web-клиенте исправлена ошибка, приводящая к отображению кнопки сброса при применении скрытых параметров фильтрации данных.
- В web-клиенте исправлена ошибка, приводящая к некорректному отображению локализации в тултипах представлений.
- В обработчике шаблонов бизнес-процессов исправлена ошибка, когда при сохранении карточки в ходе обработки процесса сообщения с уровнем
Info
иWarning
не возвращались в результате обработки процесса и не выводились пользователю. - Исправлены опечатки в названиях классов, методов, параметров темы, строк локализации и других объектов:
Pallete -> Palette
. - В web-клиенте исправлена ошибка, приводящая к некорректному отображению даты кэширования метаинформации: ранее время отображалось в utc формате, теперь в локальном.
- В web-клиенте исправлена ошибка, приводящая к невозможности раскрыть контрол представления древовидной структуры с примененной настройкой “Сворачивать группы”.
- В файле
app.json
веб-сервиса включение конфигурационных файловapp-*.json
теперь выполняется позже, чем файловpatch*.json
иlocalization.json
, что позволяет изменять в них строки локализации и информацию по патчам. - Исправлена ошибка, возникающая при выполнении команды
tadmin MigrateFiles
, когда система не могла разрешить типы компиляции. - В web-клиенте исправлена ошибка, из-за которой файл не отображался в предпросмотре, если предпросмотр расположен на отдельной вкладке.
- В desktop-клиенте исправлена ошибка, из-за которой некоторые фотографии, снятые на мобильные устройства, при загрузке в программу оказывались перевернуты.
- При импорте карточек в процессе объединения изменений
SmartMerge
с карточкой в системе исправлена проблема, когда исправление карточки вызывалось дважды: один раз для импортируемой карточки и один раз для существующей карточки в системе, что могло привести к двойным сообщениям об исправлении карточки. Теперь исправление выполняется только для импортируемой карточки. - Механизм исправления карточек теперь также восстанавливает тип секции, если он был указан неверно.
- Оптимизирована работа типов условий, теперь для них не создаются фиктивные типы карточек, которые загружались на клиент.
- В web-клиенте исправлены стили пунктов меню сохраненных запросов диалога “Фильтрация данных”.
- В клиенте исправлено восстановление исходного поряда строк при отмене удаления строки в обработчике события
GridViewModel.RowInvoked
. - В конструкторе бизнес-процессов в действиях “Согласование” и “Подписание” исправлена ошибка, из-за которой указывался некорректный вариант завершения в истории заданий при завершении задания с вариантом “Запросить комментарии”.
- Исправлена ошибка, которая приводила к тому, что при импорте карточки её исправление выполнялась дважды, если такая же карточка находится в корзине.
- В web-клиенте исправлена ошибка контролов “Ссылка” и “Список” в диалоге настройки параметров фильтрации представлений. Кнопка выбора из автокомпилта остается доступной, даже если настройка
AutocompleteInfo
не была задана в настройках контрола. - Исправлена ошибка, из-за которой в процессе сохранения карточки с удалением файла при возникновении ошибки сохранения содержимое файла могло быть удалено.
- В web-клиенте исправлена ошибка, приводящая к отсутствию переноса текста в заголовках представлений.
- В маршрутах исправлена ошибка, из-за которой при пропуске этапа не сохранялась информация об изменённых параметрах или порядке следования в маршруте. Ошибка воспроизводилась, если пропуск этапа выполнялся после изменения его параметров и/или порядка следования.
- В маршрутах исправлена ошибка, приводящая к изменению порядка следования этапов при одновременном пропуске нескольких этапов.
- В маршрутах исправлена ошибка, из-за которой при пропуске этапа изменялось положение добавленного вручную этапа. Ошибка воспроизводилась, если перед пропуском этапа карточка содержала добавленный вручную этап с изменённым порядком следования.
- В desktop-клиенте исправлена инициализация свойства
RowEventArgs.CancellationToken
.
Обновление на новую сборку¶
- Добавлена поддержка дистрибутива Linux
Calculate Linux 22.0.1
. Полный список поддерживаемых дистрибутивов (с которыми тестировалась платформа) доступен в разделе документации Системные требования для серверов Linux. - Если в коде проектного решения C# вызываются цепочки расширений посредством методов
IExtensionContainer.ResolveExecutorAsync
илиTryResolveExecutorAsync
, и к возвращённому объектуIExtensionExecutor<TExtension>
возможно одновременное обращение из разных потоков (нитей выполнения), то используйте перегрузки этих методов с параметромsynchronized: true
. - Объект
SuspendableObservableCollection
перенесён из пространства имёнTessa.UI
вTessa.Platform.Collections
. Его методSuspendChangeNotification
переименован вSuspendNotifications
. КоллекцияObservableCollection<TItem, TCollection>
унаследована от этого класса и теперь реализует интерфейсISuspendableObservableCollection<TItem, TCollection>
, который предоставляет методSuspendNotifications
. Обновите код проектных расширений, если использовали эти классы и интерфейсы. - Исправлена опечатка в свойстве
SatelliteTypeDescriptor.IsDefferedStore
. Переименуйте места использования в проектах. - Удалено свойство
DeferredEventArgs.Empty
. Используйте вместо него создание экземпляра конструктором по умолчаниюnew DeferredEventArgs()
. - Исправлены опечатки в названиях классов, методов, параметров темы, строк локализации и других объектов:
Pallete -> Palette
. Переименуйте их в проектном решении, если они используются: строки локализации (CardTypes_Blocks_ColorsPalette
и др.), параметр темыCold.json
(ColorsPalette
), пространство имён (Tessa.UI.Controls.ColorPalette
), интерфейсы (IColorPaletteSettingsManager
,IColorPalette
,IColorPaletteItem
), классы (ChartColorPaletteHelper
,ButtonPaletteItemViewModel
,ColorPaletteItemViewModel
,ColorPaletteSettingsManager
,ColorPaletteViewModel
), перечисление (PaletteColorTypes
). - Класс
KrScopeLevel
больше не реализует интерфейсIAsyncDisposable
. Для выполнения задач, связанных с освобождением ресурсов, используйте методKrScopeLevel.ExitAsync
. - В файле
app.json
веб-сервиса включение конфигурационных файловapp-*.json
теперь выполняется позже, чем файловpatch*.json
иlocalization.json
, что позволяет изменять в них строки локализации и информацию по патчам.
Изменения конфигурации при обновлении¶
-
Представления:
NotificationSubscriptions
-
Таблицы:
SequencesInfo
-
Типы:
-
ConditionType
-
PersonalizationUserSettings
-
ServerInstance
-
-
Изменены библиотеки локализации.