Концепции

Файлы конфигурации

Поддерживаемые форматы, проверка синтаксиса, комментарии и что происходит с файлом при публикации.

Поддерживаемые типы файлов: json, lua, txt, css, scss.

Что происходит при публикации

ТипПроверка в редактореПри публикации
jsonДолжен быть валидным JSON; при ошибках сохранение заблокированоКлючи $note удаляются, затем файл минифицируется
luaСинтаксис Lua 5.3; при ошибках сохранение заблокированоПубликуется как есть, комментарии остаются
txtНетПубликуется как есть
css, scssНетПубликуется как есть. SCSS отдаётся исходником: компилирует клиент

Комментарии в JSON: $note

В JSON нет комментариев. Чтобы оставить заметки команде, добавьте ключи, начинающиеся с $note. В редакторе они остаются, из опубликованного файла удаляются. Значением может быть что угодно, даже объект.

{
  "$note": "Цены в копейках",
  "price": 499,
  "bonus": {
    "$note_bonus": "Повышено к весеннему событию",
    "amount": 20
  }
}

Правила:

  • Подходит любой ключ, начинающийся с $note: $note, $note_price, $notes.
  • Заметки удаляются из корневого объекта и на три уровня вглубь. Каждый вложенный объект или массив — один уровень. Более глубокие заметки публикуются как есть, поэтому держите их ближе к корню.
  • Комментарии // и /* */ — не валидный JSON. Редактор отмечает их как ошибки.

Комментарии в других форматах

Комментарии в Lua, CSS и SCSS публикуются как написаны, и их получает каждый клиент, загрузивший файл. Не пишите в них внутренние заметки и ничего чувствительного. Удаляемые при публикации заметки существуют только в JSON.

Флаги файла

  • Шифрование. Файл шифруется при публикации. См. Шифрование.
  • Валидация. Если у версии включена внешняя валидация, файлы с этим флагом отправляются вашему валидатору перед публикацией. Валидатор получает исходное содержимое (с ключами $note, без шифрования).