Платформа 3V/Навигатор/Конфиг навигатора: различия между версиями
(не показано 27 промежуточных версий этого же участника) | |||
Строка 20: | Строка 20: | ||
|- | |- | ||
| chatObjectCode || || код объекта для чата | | chatObjectCode || || код объекта для чата | ||
+ | |- | ||
+ | | chatMentionsObjectCode|| || код объекта для упоминаний в чате | ||
+ | |- | ||
+ | | maxCommentLength || || максимальная длинна сообщения в коментариях | ||
+ | |- | ||
+ | | commentEnterSendPost || false || отправка коментария по Enter (по умолчанию по Ctrl-Enter или Shift-Enter) | ||
|- | |- | ||
| dropdownApplyCancelButtons || false || Отображение кнопок Применить/Отмена в выпадающих списках | | dropdownApplyCancelButtons || false || Отображение кнопок Применить/Отмена в выпадающих списках | ||
|- | |- | ||
| disableListsSilentSearchById || false || Отключение поиска по id в выпадающих списках | | disableListsSilentSearchById || false || Отключение поиска по id в выпадающих списках | ||
+ | |- | ||
+ | | disableFormulaConstructor || false || Отключение интерфейса добавления/редактирования формул | ||
+ | |- | ||
+ | | enableCalculationManager || false || Включение настройки единой модели расчета | ||
+ | |- | ||
+ | | showReportIsDead || false || Отображение информации о том что инстанс отчета прибит на сервере | ||
|- | |- | ||
| gzip || false || нужно ли дополнительно упаковывать содержимое запросов к бакенду с помощью gzip | | gzip || false || нужно ли дополнительно упаковывать содержимое запросов к бакенду с помощью gzip | ||
+ | |- | ||
+ | | hideHomePage || false || скрытие домашней страницы | ||
|- | |- | ||
| homePageCode || || код объекта используемого в качестве стартовой страницы | | homePageCode || || код объекта используемого в качестве стартовой страницы | ||
|- | |- | ||
− | | homePageId || || | + | | homePageId (УСТАРЕВШЕЕ) || || идентификатор объекта используемого в качестве стартовой страницы |
+ | |- | ||
+ | | fileStorageType || "Db" || используемый тип хранилища (доступные варианты: 'Db', 'S3') | ||
+ | |- | ||
+ | | fileSizeLimit || 5 || ограничение на размер файлов (в МБ) | ||
|- | |- | ||
| languageSwitcher || false || отображение переключения языков на стартовой странице | | languageSwitcher || false || отображение переключения языков на стартовой странице | ||
+ | |- | ||
+ | | languages || ["ru", "en"] || языки для переключения языков (первый из списка является языком по умолчанию) | ||
|- | |- | ||
| limitDictionaryElementsCount || 1000 || ограничение на количество загружаемых элементов справочника | | limitDictionaryElementsCount || 1000 || ограничение на количество загружаемых элементов справочника | ||
Строка 44: | Строка 64: | ||
|- | |- | ||
| titleName || "Trivium Navigator" || заголовок вкладки браузера | | titleName || "Trivium Navigator" || заголовок вкладки браузера | ||
+ | |- | ||
+ | | useFileSignatures || false || нужно ли отображение подписывания файлов в ячейках | ||
+ | |- | ||
+ | | hideUsersAdmin || false || скрытие админки ролей/юзеров | ||
+ | |- | ||
+ | | hideObjectTypeCreation || || скрытие возможности создания объектов указанных типов с главной страницы и кнопки "Создать" в навигаторе (возможные варианты: "Folder", "Dictionary", "Pivot", "Indicator", "Connection", "Calendar", "CalculationMethod", "Workflow", "ClientCard", "ExternalDictionary", "Resource", "File") | ||
+ | |- | ||
+ | | colspan="2" | '''homeExtraButtons''' || коллекция дополнительных кнопок размещаемых рядом с "Перейти к навигатору" на главной странице | ||
+ | |- | ||
+ | | name || || имя кнопки | ||
+ | |- | ||
+ | | localizedName || || коллекция имен кнопки для разных локалей | ||
+ | |- | ||
+ | | locale || || локаль (возможные варианты: 'en','ru','tr') | ||
+ | |- | ||
+ | | value || || значение имени кнопки для указанной локали | ||
+ | |- | ||
+ | | objectCode || || код объекта открываемый при клике | ||
+ | |- | ||
+ | | url || || адрес открываемый при клике | ||
+ | |- | ||
+ | | isTargetBlank || false || открытие ссылки в новом окне | ||
+ | |- | ||
+ | | color || || цвет шрифта кнопки, если нужен отличный от дефолтного | ||
+ | |- | ||
+ | | background || || фон кнопки, если нужен отличный от дефолтного | ||
|- | |- | ||
| colspan="2" | '''env''' || описание конфига | | colspan="2" | '''env''' || описание конфига | ||
Строка 54: | Строка 100: | ||
|- | |- | ||
| level || "Info" || уровень логирования (варианты значений: "Info", "Error") | | level || "Info" || уровень логирования (варианты значений: "Info", "Error") | ||
+ | |- | ||
+ | | colspan="2" | '''namespaces''' || настройки неймспейсов/тенантов (мапа/справочник по имени тенанта) | ||
+ | |- | ||
+ | | colspan="2" | '''имя_тенанта''' || имя тенанта | ||
+ | |- | ||
+ | | languageSwitcher || false || отображение переключения языков на стартовой странице | ||
+ | |- | ||
+ | | languages || ["ru", "en"] || языки для переключения языков (первый из списка является языком по умолчанию) | ||
+ | |- | ||
+ | | useFileSignatures || false || нужно ли отображение подписывания файлов в ячейках | ||
+ | |- | ||
+ | | fileSizeLimit || 5 || ограничение на размер файлов (в МБ) | ||
+ | |- | ||
+ | | colspan="2" | '''manualRealms''' || для ручного выбора неймспейса/тенанта/реалма | ||
+ | |- | ||
+ | | enabled || false || включен ли ручной выбор | ||
+ | |- | ||
+ | | names || || коллекция имен неймспейсов/тенантов/реалмов | ||
|- | |- | ||
| colspan="2" | '''theme''' || настройки темизации (подробнее [[Платформа_3V/Навигатор/Темы_навигатора|Темы навигатора]]) | | colspan="2" | '''theme''' || настройки темизации (подробнее [[Платформа_3V/Навигатор/Темы_навигатора|Темы навигатора]]) | ||
Строка 59: | Строка 123: | ||
| defaultThemeName || "default" || имя темы по умолчанию, используется если пользователь не менял тему (настройка сохраняется в localStorage и ее можно очистить вместе с cookies) | | defaultThemeName || "default" || имя темы по умолчанию, используется если пользователь не менял тему (настройка сохраняется в localStorage и ее можно очистить вместе с cookies) | ||
|- | |- | ||
− | | additionalThemes || || коллекция дополнительных тем | + | | disableSwitcher || false || отображать ли переключалку тем |
+ | |- | ||
+ | | additionalThemes (УСТАРЕВШЕЕ) || || коллекция дополнительных тем | ||
+ | |- | ||
+ | | themes || || коллекция настроек тем (можно как задавать новые темы, так и редактировать встроенные системные) | ||
+ | |- | ||
+ | | colspan="2" | '''audit''' || настройки аудита | ||
+ | |- | ||
+ | | disableLinks || false || отключить аудит кликов по ссылкам | ||
+ | |- | ||
+ | | disableFiles || false || отключить аудит скачивания файлов | ||
|- | |- | ||
| colspan="3" style="color:#999 | ''настройки навигатора касающиеся грида/пивота'' | | colspan="3" style="color:#999 | ''настройки навигатора касающиеся грида/пивота'' | ||
Строка 70: | Строка 144: | ||
|- | |- | ||
| gridResetEmbeddedFlag || false || сброс флага areDataEmbedded в пивотах полученных из карточек, для работы с гридом через окна | | gridResetEmbeddedFlag || false || сброс флага areDataEmbedded в пивотах полученных из карточек, для работы с гридом через окна | ||
+ | |- | ||
+ | | gridDefaultRowHeight || 30 || дефолтная высота строк грида | ||
+ | |- | ||
+ | | gridDefaultHeaderRowHeight || 30 || Дефолтная высота строк шапки грида | ||
|- | |- | ||
| instantAutoFilterButton || false || отображать кнопку автофильтра постоянно в шапке грида для всех столбцов | | instantAutoFilterButton || false || отображать кнопку автофильтра постоянно в шапке грида для всех столбцов | ||
|- | |- | ||
| serverWait || 500 || задержка для скрола DataTables прежде чем будут запрашиваться данные ([https://datatables.net/reference/option/scroller.serverWait Datatables API]) | | serverWait || 500 || задержка для скрола DataTables прежде чем будут запрашиваться данные ([https://datatables.net/reference/option/scroller.serverWait Datatables API]) | ||
+ | |- | ||
+ | | signalRLogLevel || "Information" || Уровень логирования для SignalR (доступные варианты: "Trace", "Debug", "Information", "Warning", "Error", "Critical", "None"), также можно выключить логирование SignalR указав "None" | ||
+ | |- | ||
+ | | signalRTransport || "WebSockets" || Транспорт для SignalR (доступные варианты: "None", "WebSockets", "ServerSentEvents", "LongPolling"), также можно выключить SignalR указав "None" | ||
|- | |- | ||
| trimValues || false || обрезать пробелы и переводы строки редактируемых значений | | trimValues || false || обрезать пробелы и переводы строки редактируемых значений | ||
Строка 79: | Строка 161: | ||
| transposedTableColumnsLimit || 100 || максимальное количество столбцов (строк пивота) в транспонированной таблице | | transposedTableColumnsLimit || 100 || максимальное количество столбцов (строк пивота) в транспонированной таблице | ||
|- | |- | ||
− | | websocketDisabled || false || отключение получения данных через | + | | websocketDisabled (УСТАРЕВШЕЕ) || false || отключение получения данных через SignalR |
|- | |- | ||
| colspan="3" style="color:#999 | ''настройки сервисов бакенда и авторизации'' | | colspan="3" style="color:#999 | ''настройки сервисов бакенда и авторизации'' | ||
Строка 88: | Строка 170: | ||
|- | |- | ||
| addTokenToExternalRequests || false || добавлять токен авторизации во внешние запросы (часто бывает нужно при локальной отладке, но может понадобиться и в проектах) | | addTokenToExternalRequests || false || добавлять токен авторизации во внешние запросы (часто бывает нужно при локальной отладке, но может понадобиться и в проектах) | ||
+ | |- | ||
+ | | disableAuthTokenSending || false || признак, что не нужно слать токен авторизации в бэк (например, когда приложение находится за auth-proxy, т.е. токен ходит в куке, а прокси автоматически отсылает его в бэк; соответственно, вебу токены в запросах слать не нужно) | ||
+ | |- | ||
+ | | sendNamespaceHeader || false || добавлять заголовок Namespace в запросы к беку | ||
|- | |- | ||
| clientId || || настройка clientId для сервера авторизации | | clientId || || настройка clientId для сервера авторизации | ||
Строка 95: | Строка 181: | ||
| revokeOnLogout || false || настройка для логаута (позволяющая отзывать токен при логауте) | | revokeOnLogout || false || настройка для логаута (позволяющая отзывать токен при логауте) | ||
|- | |- | ||
− | | | + | | loginUrl || || |
+ | |- | ||
+ | | logoutUrl || || | ||
+ | |- | ||
+ | | tokenEndpoint || || | ||
+ | |- | ||
+ | | revocationEndpoint || || | ||
+ | |- | ||
+ | | userinfoEndpoint || || | ||
|- | |- | ||
− | | | + | | scope || || |
|- | |- | ||
− | + | | oidc || || | |
|- | |- | ||
− | | | + | | showDebugInformation || || отображение дебажной информации (в консоли) от библиотеки авторизации |
|- | |- | ||
− | | | + | | customQueryParameters || || дополнительные параметры в урл сервису авторизации |
|- | |- | ||
− | | | + | | colspan="2" | '''passwordFlow''' || настройки для случая работы PasswordFlow, т.е. через логин/пароль |
|- | |- | ||
− | | | + | | login || || |
|- | |- | ||
− | | | + | | password || || |
|- | |- | ||
| colspan="2" | '''multipleNamespaces''' || настройки для мультинеймспейсности | | colspan="2" | '''multipleNamespaces''' || настройки для мультинеймспейсности | ||
+ | |- | ||
+ | | fullUrlSearch || false || нужно ли искать неймспейс во всем урле (а не только в хосте, как ищется по умолчанию) | ||
|- | |- | ||
| urlSearchPattern || || регулярное выражение для поиска неймспейса в текущем хосте. | | urlSearchPattern || || регулярное выражение для поиска неймспейса в текущем хосте. | ||
Строка 129: | Строка 225: | ||
|- | |- | ||
| auth || || сервис авторизации | | auth || || сервис авторизации | ||
+ | |- | ||
+ | | calcmanager || "calcmanager" || сервис Единой Модели Расчетов | ||
|- | |- | ||
| calculation || "engine" || сервис методик | | calculation || "engine" || сервис методик | ||
Строка 137: | Строка 235: | ||
|- | |- | ||
| engine || "engine" || сервис ядра | | engine || "engine" || сервис ядра | ||
+ | |- | ||
+ | | filestorage|| "filestorage" || сервис хранилища файлов | ||
|- | |- | ||
| importexportdata || "import-export" || сервис импорта/экспорта | | importexportdata || "import-export" || сервис импорта/экспорта |
Текущая версия на 06:47, 22 декабря 2022
Конфиг навигатору нужен хотя бы для того чтобы знать адреса сервисов бакенда и авторизации. А также для дополнительной настройки всего приложения.
Расположение
Конфиги лежат внутри навигатора
- в исходниках для разработки или локального запуска их можно найти в "trv-ui/projects/navigator/src/assets/config/"
- в собранном навигаторе их можно найти в "assets/config/"
Приложение для установки на стенд обычно собирается в "prod" конфигурации и тогда используется конфиг "config.docker.json". При деплое проекта на стенд конфиг обычно подменяется (заранее подготовленным и хранящимся в гитлабе, для каждого стенда каждого проекта собственный конфиг).
Описание свойств конфига
Свойство | Значение по умолчанию | Описание |
---|---|---|
общие настройки навигатора | ||
configObjectCode | код объекта с настройками кастомизации (используется для настройки разных стартовых страниц и оформления для разных ролей пользователей) | |
chatObjectCode | код объекта для чата | |
chatMentionsObjectCode | код объекта для упоминаний в чате | |
maxCommentLength | максимальная длинна сообщения в коментариях | |
commentEnterSendPost | false | отправка коментария по Enter (по умолчанию по Ctrl-Enter или Shift-Enter) |
dropdownApplyCancelButtons | false | Отображение кнопок Применить/Отмена в выпадающих списках |
disableListsSilentSearchById | false | Отключение поиска по id в выпадающих списках |
disableFormulaConstructor | false | Отключение интерфейса добавления/редактирования формул |
enableCalculationManager | false | Включение настройки единой модели расчета |
showReportIsDead | false | Отображение информации о том что инстанс отчета прибит на сервере |
gzip | false | нужно ли дополнительно упаковывать содержимое запросов к бакенду с помощью gzip |
hideHomePage | false | скрытие домашней страницы |
homePageCode | код объекта используемого в качестве стартовой страницы | |
homePageId (УСТАРЕВШЕЕ) | идентификатор объекта используемого в качестве стартовой страницы | |
fileStorageType | "Db" | используемый тип хранилища (доступные варианты: 'Db', 'S3') |
fileSizeLimit | 5 | ограничение на размер файлов (в МБ) |
languageSwitcher | false | отображение переключения языков на стартовой странице |
languages | ["ru", "en"] | языки для переключения языков (первый из списка является языком по умолчанию) |
limitDictionaryElementsCount | 1000 | ограничение на количество загружаемых элементов справочника |
navigatorSearchMinimumLetters | 2 | минимальное количество символов для поиска в дереве навигатора |
navigatorSearchTimeout | 300 | таймаут для поиска в дереве навигатора |
newObjectFolderCode | код объекта для расположения новых объектов | |
rootName | "3V" | имя рутовой папки |
titleName | "Trivium Navigator" | заголовок вкладки браузера |
useFileSignatures | false | нужно ли отображение подписывания файлов в ячейках |
hideUsersAdmin | false | скрытие админки ролей/юзеров |
hideObjectTypeCreation | скрытие возможности создания объектов указанных типов с главной страницы и кнопки "Создать" в навигаторе (возможные варианты: "Folder", "Dictionary", "Pivot", "Indicator", "Connection", "Calendar", "CalculationMethod", "Workflow", "ClientCard", "ExternalDictionary", "Resource", "File") | |
homeExtraButtons | коллекция дополнительных кнопок размещаемых рядом с "Перейти к навигатору" на главной странице | |
name | имя кнопки | |
localizedName | коллекция имен кнопки для разных локалей | |
locale | локаль (возможные варианты: 'en','ru','tr') | |
value | значение имени кнопки для указанной локали | |
objectCode | код объекта открываемый при клике | |
url | адрес открываемый при клике | |
isTargetBlank | false | открытие ссылки в новом окне |
color | цвет шрифта кнопки, если нужен отличный от дефолтного | |
background | фон кнопки, если нужен отличный от дефолтного | |
env | описание конфига | |
name | "docker" | имя конфига |
logging | настройки логирования | |
enabled | false | включение логирования |
level | "Info" | уровень логирования (варианты значений: "Info", "Error") |
namespaces | настройки неймспейсов/тенантов (мапа/справочник по имени тенанта) | |
имя_тенанта | имя тенанта | |
languageSwitcher | false | отображение переключения языков на стартовой странице |
languages | ["ru", "en"] | языки для переключения языков (первый из списка является языком по умолчанию) |
useFileSignatures | false | нужно ли отображение подписывания файлов в ячейках |
fileSizeLimit | 5 | ограничение на размер файлов (в МБ) |
manualRealms | для ручного выбора неймспейса/тенанта/реалма | |
enabled | false | включен ли ручной выбор |
names | коллекция имен неймспейсов/тенантов/реалмов | |
theme | настройки темизации (подробнее Темы навигатора) | |
defaultThemeName | "default" | имя темы по умолчанию, используется если пользователь не менял тему (настройка сохраняется в localStorage и ее можно очистить вместе с cookies) |
disableSwitcher | false | отображать ли переключалку тем |
additionalThemes (УСТАРЕВШЕЕ) | коллекция дополнительных тем | |
themes | коллекция настроек тем (можно как задавать новые темы, так и редактировать встроенные системные) | |
audit | настройки аудита | |
disableLinks | false | отключить аудит кликов по ссылкам |
disableFiles | false | отключить аудит скачивания файлов |
настройки навигатора касающиеся грида/пивота | ||
agGridLicence | лицензия для AgGrid | |
defaultGridComponent | "DataTables" | грид используемый по умолчанию(доступные варианты: DataTables, AgGridViewport, AgGrid) |
gridFormulaRowHidden | false | скрытие строки с формулой над гридом |
gridResetEmbeddedFlag | false | сброс флага areDataEmbedded в пивотах полученных из карточек, для работы с гридом через окна |
gridDefaultRowHeight | 30 | дефолтная высота строк грида |
gridDefaultHeaderRowHeight | 30 | Дефолтная высота строк шапки грида |
instantAutoFilterButton | false | отображать кнопку автофильтра постоянно в шапке грида для всех столбцов |
serverWait | 500 | задержка для скрола DataTables прежде чем будут запрашиваться данные (Datatables API) |
signalRLogLevel | "Information" | Уровень логирования для SignalR (доступные варианты: "Trace", "Debug", "Information", "Warning", "Error", "Critical", "None"), также можно выключить логирование SignalR указав "None" |
signalRTransport | "WebSockets" | Транспорт для SignalR (доступные варианты: "None", "WebSockets", "ServerSentEvents", "LongPolling"), также можно выключить SignalR указав "None" |
trimValues | false | обрезать пробелы и переводы строки редактируемых значений |
transposedTableColumnsLimit | 100 | максимальное количество столбцов (строк пивота) в транспонированной таблице |
websocketDisabled (УСТАРЕВШЕЕ) | false | отключение получения данных через SignalR |
настройки сервисов бакенда и авторизации | ||
auth | настройки авторизации | |
isEnabled | false | включена ли (выключена бывает при локальной отладке) |
addTokenToExternalRequests | false | добавлять токен авторизации во внешние запросы (часто бывает нужно при локальной отладке, но может понадобиться и в проектах) |
disableAuthTokenSending | false | признак, что не нужно слать токен авторизации в бэк (например, когда приложение находится за auth-proxy, т.е. токен ходит в куке, а прокси автоматически отсылает его в бэк; соответственно, вебу токены в запросах слать не нужно) |
sendNamespaceHeader | false | добавлять заголовок Namespace в запросы к беку |
clientId | настройка clientId для сервера авторизации | |
clientSecret | настройка clientSecret для сервера авторизации | |
revokeOnLogout | false | настройка для логаута (позволяющая отзывать токен при логауте) |
loginUrl | ||
logoutUrl | ||
tokenEndpoint | ||
revocationEndpoint | ||
userinfoEndpoint | ||
scope | ||
oidc | ||
showDebugInformation | отображение дебажной информации (в консоли) от библиотеки авторизации | |
customQueryParameters | дополнительные параметры в урл сервису авторизации | |
passwordFlow | настройки для случая работы PasswordFlow, т.е. через логин/пароль | |
login | ||
password | ||
multipleNamespaces | настройки для мультинеймспейсности | |
fullUrlSearch | false | нужно ли искать неймспейс во всем урле (а не только в хосте, как ищется по умолчанию) |
urlSearchPattern | регулярное выражение для поиска неймспейса в текущем хосте.
Например, взять домен 3го уровня, исключая 3v (пример хоста: trivium-test.3v-group.net): "^(\\w{1}|3[^v]|[^3]v|[^3][^v]|[-\\w]{3,}){1}.[-\\w]+.[-\\w]+$" | |
authReplacePattern | регулярное выражение для поиска дефолтного неймспейса в урле по работе с авторизацией.
Например, поиск реалма в строке авторизации в киклоке (пример урла авторизации: https://3v.3v-group.net/auth/realms/trivium): "https?:\\/\\/[-\\w]+.[-\\w]+.[-\\w]+\\/[-\\w]+\\/[-\\w]+\\/([-\\w]+)" | |
gateway | настройки для взаимодействия с сервисами(бакендом) | |
baseUrl | базовый урл для всех сервисов | |
locations | адреса (обычно относительные) сервисов | |
auth | сервис авторизации | |
calcmanager | "calcmanager" | сервис Единой Модели Расчетов |
calculation | "engine" | сервис методик |
cards | "cards" | сервис карточек |
dictionaries | "dictionaries" | сервис справочников |
engine | "engine" | сервис ядра |
filestorage | "filestorage" | сервис хранилища файлов |
importexportdata | "import-export" | сервис импорта/экспорта |
logger | "logger" | сервис логирования |
pgprovider | "pgprovider" | сервис pgprovider |
repository | "repository" | сервис репозитория |
subjects | "subjects" | сервис прав на объекты |
updates | "updates" | сервис обновлений |
workflow | "workflow" | сервис согласования |
extendCardInstanceLifeInMinutes | 15 | интервал в минутах запуска выполнения запроса по таймеру для продления времени жизни карточки на сервере, если <= 0 то автопродление отключено |