Appearance
Справочник настроек календаря
Настройки @mes/aps-calendar@0.6.0 задаются отдельными записями calendar.*. Руководство по Settings показывает поля записи и примеры создания. Руководство панели Calendar объясняет выбор объекта и получение данных.
Локаль, часовой пояс и почасовые метки
Компонент читает эти параметры внутри settings, поэтому полные имена начинаются с calendar.settings.. Ключи верхнего уровня calendar.locale или calendar.workingHours эти параметры не настраивают.
| Имя Settings | Тип / код API | По умолчанию | Что меняет |
|---|---|---|---|
calendar.settings.locale | Строка / 0 | ru-RU | Язык и правила записи дат и времени |
calendar.settings.timezone | Строка / 0 | IANA-зона браузера, затем UTC | Форматирование времени и границы дня в поддерживающих зону расчётах пакета |
calendar.settings.workingHours.startFrom | Строка / 0 | 00:00 | Первая почасовая метка |
calendar.settings.workingHours.endTo | Строка / 0 | 25:00 | Верхняя граница не включается; при 25:00 последняя почасовая метка — 24:00 |
calendar.settings.inheritText | Строка / 0 | Унаследовано от: | Текст рядом с именем источника унаследованного статуса или шаблона |
Локаль — корректный тег BCP-47. Часовой пояс — корректное IANA-имя, например Europe/Moscow. При отсутствии или неверном имени зоны панель использует зону браузера, затем UTC. Исходные нормализованные моменты API при этом не переписываются. Рабочие часы задаются строками HH:mm. Конец должен быть позже начала. Компонент не проверяет формат и диапазон этих значений из Settings.
workingHours задаёт почасовые метки и линии сетки в видах дня и недели. Он не ограничивает запрос Calendar API и не меняет расчёт положения статусов: они по-прежнему размещаются относительно полных суток. Эта настройка не создаёт окно рабочего времени; заданные метки могут расходиться с временными координатами, по которым размещены статусы.
Формат времени и даты
Задавайте отдельные свойства, а не одну строку JSON со всем объектом формата:
| Объект | Значения компонента по умолчанию | Где используется |
|---|---|---|
calendar.settings.timeFormat | hour: "2-digit", minute: "2-digit" | Подписи времени |
calendar.settings.dateFormat | year: "numeric", month/day/hour/minute: "2-digit"; секунды не заданы | Подписи даты и времени |
calendar.settings.weekFormat | year: "numeric", month: "short", day: "2-digit" | Отдельные подписи дня, месяца и года |
Примеры отдельных записей:
name | dataType | value |
|---|---|---|
calendar.settings.timeFormat.hour | 0 | 2-digit |
calendar.settings.timeFormat.minute | 0 | 2-digit |
calendar.settings.timeFormat.hour12 | 4 | false |
calendar.settings.dateFormat.month | 0 | long |
calendar.settings.weekFormat.month | 0 | long |
timeFormat и dateFormat используют параметры Intl.DateTimeFormat. Для каждого свойства выбирайте соответствующий строковый, логический или числовой тип записи. В weekFormat читаются только day, month и year; остальные поля там ничего не меняют. Зону задавайте через calendar.settings.timezone: форматирование применяет её поверх timeZone внутри объекта формата.
Начальный вид и дата
| Имя Settings | Тип / код API | По умолчанию | Значения |
|---|---|---|---|
calendar.calendarType | Целое число / 1 | 1 — неделя | 0 — месяц, 1 — неделя, 2 — день |
calendar.calendarDate | Дата и время / 3 | Текущая дата при загрузке пакета | Корректная строка ISO, например 2026-10-13T00:00:00.000Z |
Это начальные значения. После переходов пользователя панель запоминает вид и дату на время сеанса браузера и восстанавливает их при выборе другого объекта. При таких повторных созданиях сохранённые значения имеют приоритет над Settings. Перезагрузите страницу, чтобы снова начать со значений Settings.
Пример: московское время и почасовые метки с 08:00
Создайте три скалярные глобальные записи через POST /settings:
json
[
{
"scope": "global", "name": "calendar.settings.timezone",
"description": "Часовой пояс календаря", "dataType": 0,
"isArray": false, "overridable": true, "value": "Europe/Moscow"
},
{
"scope": "global", "name": "calendar.settings.workingHours.startFrom",
"description": "Первая почасовая метка", "dataType": 0,
"isArray": false, "overridable": true, "value": "08:00"
},
{
"scope": "global", "name": "calendar.settings.workingHours.endTo",
"description": "Верхняя граница почасовых меток", "dataType": 0,
"isArray": false, "overridable": true, "value": "18:00"
}
]Если запись уже существует, измените её. Перезагрузите приложение Calendar, выберите объект и откройте дневной вид. Почасовые метки идут с 08:00 до 17:00: верхняя граница 18:00 не включается. Форматирование времени использует московский часовой пояс. Эти записи не меняют суточный диапазон запроса и не размещают статусы в рабочем окне 08:00–18:00. Пользовательское переопределение имеет приоритет над глобальной записью; см. области Settings.
Что задаёт приложение или сам календарь
uuid— идентификатор выбранного объекта; его передаёт панель.calendarWeek— пара дат, которая при создании компонента вычисляется изcalendarDate; отдельно её задавать не нужно.calendarTemplate— вычисленная сетка календаря, а не массив Settings. Назначения, статусы и шаблоны приходят через Calendar API.- Настройки не выбирают объект и не передают данные его календаря.
- Загрузчик графиков обрабатывает скалярные свойства, но не массивы и не строки JSON с объектами. JavaScript из значения не выполняется.
Часовой пояс не гарантирует независимость всех расчётов пакета от браузера. См. ограничения Calendar.