@kontur.candy/sugar-validator
v0.5.3
Published
Syntax validator for Candy.Sugar
Downloads
4
Keywords
Readme
sugar-validator
Консольный инструмент для валидации файлов в формате sugar.xml.
Использование
Установка и запуск
npm install @kontur.candy/sugar-validator
или
yarn add @kontur.candy/sugar-validator
а затем
npx sugar-validator forms/110302/sugar/index.sugar.xml
или
yarn sugar-validator forms/110302/sugar/index.sugar.xml
Также возможна глобальная установка
Аргументы командной строки
sugar-validator [options...] fileGlobs
fileGlobs
- один или несколько шаблонов или имём файлов, разделённых пробелом. Шаблоны поддерживают синтаксис glob.
Допустимые опции:
--reporter, -r
- Формат вывода сообщений валидатора. Поддерживаеются форматыtext
иteamcity
.--help, -h
- Выводит справку.
Правила валидаций
valid-element
Проверяет, что элемент является допустимым элементом языка.
Пример вывода:
valid-element (2, 6)
Неизвестное имя элемента: 'inputaa'
valid-attribute
Проверяет, что используемый атрибут является допустимым для данного тэга.
Пример вывода:
valid-attribute (41, 116)
Элемент type не может имееть атрибута 'requireDescription'
valid-attribute-type
Проверяет соответствие значения атрибута его типу. Поддерживаемые типы: (Number
, Color
, Boolean
)
Пример вывода:
valid-attribute-type (89, 52)
Значение '#9ZZB9B' атрибута color не может быть преобразовано к допустимым типам (Color).
valid-path
Для атрибутов типа Path
проверяет наличие в схеме данных. Валидатор пытается найти схему по пути
..\schemas\[gfv].rng.xml
относительно файла с сахаром.
Пример вывода:
valid-path (457, 37)
Элемент или атрибут '/Файл/Документ/ЕНВД/СумНалПУ/СумСВУм346.32.2_disabled' не найден в схеме данных
required-attribute
Проверяет наличие обязательных атрибутов у элементов сахара.
Пример вывода:
required-attribute (243, 15)
Элемент input должен содержать обязательный атрибут 'path'
valid-syntax
Проверяет корректность синтаксиса в файле с сахаром.
Пример вывода:
valid-syntax (47, 8)
Expected [a-zA-Z0-9\-_] but "Н" found.
valid-type
Проверяет, что в атрибутах с типом, валидный UserDefined-тип или один из встроенных типов.
Пример вывода:
valid-type (47, 8)
Type 'kpppEnvd' не существует.
no-unused-types
Проверяет, что UserDefined-тип используется хотябы один раз.
Пример вывода:
valid-type (47, 8)
Тип 'C(8)' не используется
code-style
Проверяет, что документ отформатирован и выводит соответствующее исправление
Пример вывода:
code-style (2, 5)
Insert '··'